• Bug#895142: libevent-dev: Please transition libevent-dev to multiarch

    From Laurent Pinchart@21:1/5 to All on Sat Jul 26 23:30:01 2025
    On Fri, Aug 02, 2019 at 07:03:17PM +0200, Bálint Réczey wrote:
    Control: tags -1 confirmed
    Severity: -1 wishlist

    F. Poirotte <[email protected]> ezt írta (időpont: 2018. ápr. 7., Szo, 18:33):

    Package: libevent-dev
    Version: 2.0.21-stable-3
    Severity: normal

    Dear Maintainer,

    While bug #675320 added support for multi-arch for the main packages, it seems
    the development package was overlooked. As such, it is not currently possible to
    install the dev package for multiple architectures (eg. amd64 and i386) at the
    same time.

    Trying to co-install multiple variants results in apt-get/aptitude trying to first
    remove previously installed packages. Here's the trace when trying to install
    the i386 variant on a system where the amd64 variant is already installed:

    $ sudo aptitude install libevent-dev:i386
    The following NEW packages will be installed:
    libevent-core-2.0-5:i386{a} libevent-dev:i386{b} libevent-extra-2.0-5:i386{a} libevent-openssl-2.0-5:i386{a} libevent-pthreads-2.0-5:i386{a}
    0 packages upgraded, 5 newly installed, 0 to remove and 2 not upgraded. Need to get 569 kB of archives. After unpacking 1,971 kB will be used.
    The following packages have unmet dependencies:
    libevent-dev : Conflicts: libevent-dev:i386 but 2.0.21-stable-3 is to be installed
    libevent-dev:i386 : Conflicts: libevent-dev but 2.0.21-stable-3 is installed
    The following actions will resolve these dependencies:

    Remove the following packages:
    1) libevent-dev [2.0.21-stable-3 (now, stable)]


    Accept this solution? [Y/n/q/?] q


    I checked the control file in testing/sid (libevent-2.1-6 (2.1.8-stable-4)) and the problem is also visible there.

    Yes, this is correct.

    Header files differ between architectures:

    $ diffoscope libevent-dev_2.1.8-stable-4_*
    ...
    │ │ ├── ./usr/include/event2/event-config.h
    │ │ │ @@ -439,33 +439,33 @@
    │ │ │ your system. */
    │ │ │ /* #undef EVENT__PTHREAD_CREATE_JOINABLE */
    │ │ │
    │ │ │ /* The size of `int', as computed by sizeof. */
    │ │ │ #define EVENT__SIZEOF_INT 4
    │ │ │
    │ │ │ /* The size of `long', as computed by sizeof. */
    │ │ │ -#define EVENT__SIZEOF_LONG 8
    │ │ │ +#define EVENT__SIZEOF_LONG 4
    ...

    This can be fixed, but the -dev packages are not co-installable currently.

    This is a bit annoying, when using libevent-dev in a CI container aimed
    at building for multiple architectures, we have to install the
    arch-specific package version manually before each arch build job.

    You mentioned it can be fixed. How would you envision that ? Ideally
    upstream should geenrate a header file with SIZEOF macros, but that may
    be hard to change as it could break some users.

    --
    Regards,

    Laurent Pinchart

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From =?UTF-8?B?QsOhbGludCBSw6ljemV5?=@21:1/5 to [email protected] on Sun Jul 27 00:40:01 2025
    Hi,

    On 2025. Jul 26., Sat at 23:21, Laurent Pinchart < [email protected]> wrote:

    On Fri, Aug 02, 2019 at 07:03:17PM +0200, Bálint Réczey wrote:
    Control: tags -1 confirmed
    Severity: -1 wishlist

    F. Poirotte <[email protected]> ezt írta (időpont: 2018. ápr. 7., Szo, 18:33):

    Package: libevent-dev
    Version: 2.0.21-stable-3
    Severity: normal

    Dear Maintainer,

    While bug #675320 added support for multi-arch for the main packages,
    it seems
    the development package was overlooked. As such, it is not currently
    possible to
    install the dev package for multiple architectures (eg. amd64 and
    i386) at the
    same time.

    Trying to co-install multiple variants results in apt-get/aptitude
    trying to first
    remove previously installed packages. Here's the trace when trying to
    install
    the i386 variant on a system where the amd64 variant is already
    installed:

    $ sudo aptitude install libevent-dev:i386
    The following NEW packages will be installed:
    libevent-core-2.0-5:i386{a} libevent-dev:i386{b}
    libevent-extra-2.0-5:i386{a} libevent-openssl-2.0-5:i386{a} libevent-pthreads-2.0-5:i386{a}
    0 packages upgraded, 5 newly installed, 0 to remove and 2 not upgraded. Need to get 569 kB of archives. After unpacking 1,971 kB will be used. The following packages have unmet dependencies:
    libevent-dev : Conflicts: libevent-dev:i386 but 2.0.21-stable-3 is to
    be installed
    libevent-dev:i386 : Conflicts: libevent-dev but 2.0.21-stable-3 is
    installed
    The following actions will resolve these dependencies:

    Remove the following packages:
    1) libevent-dev [2.0.21-stable-3 (now, stable)]


    Accept this solution? [Y/n/q/?] q


    I checked the control file in testing/sid (libevent-2.1-6
    (2.1.8-stable-4))
    and the problem is also visible there.

    Yes, this is correct.

    Header files differ between architectures:

    $ diffoscope libevent-dev_2.1.8-stable-4_*
    ...
    │ │ ├── ./usr/include/event2/event-config.h
    │ │ │ @@ -439,33 +439,33 @@
    │ │ │ your system. */
    │ │ │ /* #undef EVENT__PTHREAD_CREATE_JOINABLE */
    │ │ │
    │ │ │ /* The size of `int', as computed by sizeof. */
    │ │ │ #define EVENT__SIZEOF_INT 4
    │ │ │
    │ │ │ /* The size of `long', as computed by sizeof. */
    │ │ │ -#define EVENT__SIZEOF_LONG 8
    │ │ │ +#define EVENT__SIZEOF_LONG 4
    ...

    This can be fixed, but the -dev packages are not co-installable
    currently.

    This is a bit annoying, when using libevent-dev in a CI container aimed
    at building for multiple architectures, we have to install the
    arch-specific package version manually before each arch build job.

    You mentioned it can be fixed. How would you envision that ? Ideally
    upstream should geenrate a header file with SIZEOF macros, but that may
    be hard to change as it could break some users.


    Yes, this change could be offered upstream.

    Cheers,
    Balint

    <div dir="auto">Hi,</div><div><br><div class="gmail_quote gmail_quote_container"><div dir="ltr" class="gmail_attr">On 2025. Jul 26., Sat at 23:21, Laurent Pinchart &lt;<a href="mailto:[email protected]">[email protected]</
    &gt; wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;padding-left:1ex;border-left-color:rgb(204,204,204)" dir="auto">On Fri, Aug 02, 2019 at 07:03:17PM +0200, Bálint Réczey
    wrote:<br>
    &gt; Control: tags -1 confirmed<br>
    &gt; Severity: -1 wishlist<br>
    &gt; <br>
    &gt; F. Poirotte &lt;<a href="mailto:fpoirotte%[email protected]" target="_blank">[email protected]</a>&gt; ezt írta (időpont: 2018.<br>
    &gt; ápr. 7., Szo, 18:33):<br>
    &gt; &gt;<br>
    &gt; &gt; Package: libevent-dev<br>
    &gt; &gt; Version: 2.0.21-stable-3<br>
    &gt; &gt; Severity: normal<br>
    &gt; &gt;<br>
    &gt; &gt; Dear Maintainer,<br>
    &gt; &gt;<br>
    &gt; &gt; While bug #675320 added support for multi-arch for the main packages, it seems<br>
    &gt; &gt; the development package was overlooked. As such, it is not currently possible to<br>
    &gt; &gt; install the dev package for multiple architectures (eg. amd64 and i386) at the<br>
    &gt; &gt; same time.<br>
    &gt; &gt;<br>
    &gt; &gt; Trying to co-install multiple variants results in apt-get/aptitude trying to first<br>
    &gt; &gt; remove previously installed packages. Here&#39;s the trace when trying to install<br>
    &gt; &gt; the i386 variant on a system where the amd64 variant is already installed:<br>
    &gt; &gt;<br>
    &gt; &gt; $ sudo aptitude install libevent-dev:i386<br>
    &gt; &gt; The following NEW packages will be installed:<br>
    &gt; &gt;   libevent-core-2.0-5:i386{a} libevent-dev:i386{b} libevent-extra-2.0-5:i386{a} libevent-openssl-2.0-5:i386{a} libevent-pthreads-2.0-5:i386{a}<br>
    &gt; &gt; 0 packages upgraded, 5 newly installed, 0 to remove and 2 not upgraded.<br>
    &gt; &gt; Need to get 569 kB of archives. After unpacking 1,971 kB will be used.<br>
    &gt; &gt; The following packages have unmet dependencies:<br>
    &gt; &gt;  libevent-dev : Conflicts: libevent-dev:i386 but 2.0.21-stable-3 is to be installed<br>
    &gt; &gt;  libevent-dev:i386 : Conflicts: libevent-dev but 2.0.21-stable-3 is installed<br>
    &gt; &gt; The following actions will resolve these dependencies:<br>
    &gt; &gt;<br>
    &gt; &gt;      Remove the following packages:<br>
    &gt; &gt; 1)     libevent-dev [2.0.21-stable-3 (now, stable)]<br>
    &gt; &gt;<br>
    &gt; &gt;<br>
    &gt; &gt; Accept this solution? [Y/n/q/?] q<br>
    &gt; &gt;<br>
    &gt; &gt;<br>
    &gt; &gt; I checked the control file in testing/sid (libevent-2.1-6 (2.1.8-stable-4))<br>
    &gt; &gt; and the problem is also visible there.<br>
    &gt; <br>
    &gt; Yes, this is correct.<br>
    &gt; <br>
    &gt; Header files differ between architectures:<br>
    &gt; <br>
    &gt; $ diffoscope libevent-dev_2.1.8-stable-4_*<br>
    &gt; ...<br>
    &gt; │ │ ├── ./usr/include/event2/event-config.h<br>
    &gt; │ │ │ @@ -439,33 +439,33 @@<br>
    &gt; │ │ │     your system. */<br>
    &gt; │ │ │  /* #undef EVENT__PTHREAD_CREATE_JOINABLE */<br>
    &gt; │ │ │<br>
    &gt; │ │ │  /* The size of `int&#39;, as computed by sizeof. */<br>
    &gt; │ │ │  #define EVENT__SIZEOF_INT 4<br>
    &gt; │ │ │<br>
    &gt; │ │ │  /* The size of `long&#39;, as computed by sizeof. */<br> &gt; │ │ │ -#define EVENT__SIZEOF_LONG 8<br>
    &gt; │ │ │ +#define EVENT__SIZEOF_LONG 4<br>
    &gt; ...<br>
    &gt; <br>
    &gt; This can be fixed, but the -dev packages are not co-installable currently.<br>

    This is a bit annoying, when using libevent-dev in a CI container aimed<br>
    at building for multiple architectures, we have to install the<br> arch-specific package version manually before each arch build job.<br>

    You mentioned it can be fixed. How would you envision that ? Ideally<br> upstream should geenrate a header file with SIZEOF macros, but that may<br>
    be hard to change as it could break some users.</blockquote><div dir="auto"><br></div><div dir="auto">Yes, this change could be offered upstream.</div><div dir="auto"><br></div><div dir="auto">Cheers,</div><div dir="auto">Balint</div><div dir="auto"><br><
    /div></div></div>

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Laurent Pinchart@21:1/5 to All on Sun Jul 27 04:50:01 2025
    On Sun, Jul 27, 2025 at 12:36:55AM +0200, Bálint Réczey wrote:
    On 2025. Jul 26., Sat at 23:21, Laurent Pinchart wrote:
    On Fri, Aug 02, 2019 at 07:03:17PM +0200, Bálint Réczey wrote:
    Control: tags -1 confirmed
    Severity: -1 wishlist

    F. Poirotte <[email protected]> ezt írta (időpont: 2018. ápr. 7., Szo, 18:33):

    Package: libevent-dev
    Version: 2.0.21-stable-3
    Severity: normal

    Dear Maintainer,

    While bug #675320 added support for multi-arch for the main packages, it seems
    the development package was overlooked. As such, it is not currently possible to
    install the dev package for multiple architectures (eg. amd64 and i386) at the
    same time.

    Trying to co-install multiple variants results in apt-get/aptitude trying to first
    remove previously installed packages. Here's the trace when trying to install
    the i386 variant on a system where the amd64 variant is already installed:

    $ sudo aptitude install libevent-dev:i386
    The following NEW packages will be installed:
    libevent-core-2.0-5:i386{a} libevent-dev:i386{b} libevent-extra-2.0-5:i386{a} libevent-openssl-2.0-5:i386{a} libevent-pthreads-2.0-5:i386{a}
    0 packages upgraded, 5 newly installed, 0 to remove and 2 not upgraded. Need to get 569 kB of archives. After unpacking 1,971 kB will be used. The following packages have unmet dependencies:
    libevent-dev : Conflicts: libevent-dev:i386 but 2.0.21-stable-3 is to be installed
    libevent-dev:i386 : Conflicts: libevent-dev but 2.0.21-stable-3 is installed
    The following actions will resolve these dependencies:

    Remove the following packages:
    1) libevent-dev [2.0.21-stable-3 (now, stable)]


    Accept this solution? [Y/n/q/?] q


    I checked the control file in testing/sid (libevent-2.1-6 (2.1.8-stable-4))
    and the problem is also visible there.

    Yes, this is correct.

    Header files differ between architectures:

    $ diffoscope libevent-dev_2.1.8-stable-4_*
    ...
    │ │ ├── ./usr/include/event2/event-config.h
    │ │ │ @@ -439,33 +439,33 @@
    │ │ │ your system. */
    │ │ │ /* #undef EVENT__PTHREAD_CREATE_JOINABLE */
    │ │ │
    │ │ │ /* The size of `int', as computed by sizeof. */
    │ │ │ #define EVENT__SIZEOF_INT 4
    │ │ │
    │ │ │ /* The size of `long', as computed by sizeof. */
    │ │ │ -#define EVENT__SIZEOF_LONG 8
    │ │ │ +#define EVENT__SIZEOF_LONG 4
    ...

    This can be fixed, but the -dev packages are not co-installable
    currently.

    This is a bit annoying, when using libevent-dev in a CI container aimed
    at building for multiple architectures, we have to install the arch-specific package version manually before each arch build job.

    You mentioned it can be fixed. How would you envision that ? Ideally upstream should geenrate a header file with SIZEOF macros, but that may
    be hard to change as it could break some users.

    Yes, this change could be offered upstream.

    I've reported the issue upstream in https://github.com/libevent/libevent/issues/1806 and linked to this bug
    report. I expect them to follow up on github though.

    --
    Regards,

    Laurent Pinchart

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)