[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: o32 != n32



Hi James,

On Thu, May 7, 2015 at 10:57 AM, James Cowgill <james410@cowgill.org.uk> wrote:
> On Thu, 2015-05-07 at 09:27 +0200, Mathieu Malaterre wrote:
>> Hello MIPS gurus,
>>
>> Could someone please let me know if this is possible to have a
>> dual-ABI system (eg: n32 & o32) on MIPS. On my x86-64 system I can run
>> a multi-arch system (x86 & x86-64), thanks to the recent multi-arch
>> effort.
>>
>> Is it possible on MIPS ? Does it make sense ?
>
> If you have a 64-bit kernel then that should completely work (all Debian
> kernels except for 4kc are 64-bit).
>
> If you then install gcc-multilib you should be able to pass -mabi=n32 to
> gcc to get n32 binaries (or -mabi=64 for n64 binaries). I haven't done a
> huge amount of testing with it, but you should also be able to add the
> mips64el debian repo which contains everything recompiled with n64. Then
> you should be able to do proper multiarch.
>
> See: http://mipsdebian.imgtec.com/

I haven't received my Creator CI20 board yet, but I still fail to
understand how that's possible. On my x86-64 there is a *single* ABI,
and thus I can have a single `/usr/lib/x86_64-linux-gnu/libpthread.so`
installed from libc6-dev:amd64 which wont conflict with
`/usr/lib/i386-linux-gnu/libpthread.so` installed from libc6-dev:i386.

I may sound dumb, but I fail to understand how multi-abi can be
handled when directories are setup to handle (single) per-arch object
files.


Reply to: