[Pkg-erlang-devel] Bug#692832: Erlang should be multi-arch: foreign

Sergei Golovan sgolovan at nes.ru
Thu Jul 4 13:22:37 UTC 2013


Version: 1:15.b.1-dfsg-3

Hi Scott!

Sorry for such a long delay.

On Fri, Nov 9, 2012 at 6:41 PM, Scott Ritchie <scottritchie at ubuntu.com> wrote:
>
> Binary packages within erlang should be declared Multi-arch: foreign. While
> erlang is arch: all, without this field apt will assume that the transitive
> dependencies of any package depending on erlang will need to be satisified
> with the same architecture; ie, on an amd64 system installing a 32-bit
> package that depends on erlang will pull in the 32-bit version of zlib1g.

The erlang package is arch:all, but only because it's a metapackage which pulls
in all real packages (erlang-base etc.). They are arch dependent (and Erlang
virtual machine from erlang-base is definitely arch dependent) and won't
work if there won't be the correct dependencies installed.

So, if someone has to install some 32-bit Erlang based software on amd64
distribution then she will definitely has to install 32-bit Erlang with all its
32-bit dependencies. Multi-Arch: foreign will not work.

>
> This could make such an erlang-dependent package uninstallable in some
> circumstances.

Well, currently it's impossible to install 32-bit and 64-bit erlangs
simultaneously,
and I'm afraid, current multiarch implementation doesn't allow it because Erlang
VM is a binary, and only libraries with different arches can be
installed for now.
So, if you use 32-bit one then all 64-bit packages will be
uninstallable. But it's not
a bug, and Multi-Arch: foreign can't fix it anyway.

I'm closing this bugreport.

Cheers!
--
Sergei Golovan



More information about the Pkg-erlang-devel mailing list