Re: Bug#341882: Tri-arch support on mips(el)
Matthias Klose <doko@cs.tu-berlin.de> writes:
> Stuart Anderson writes:
>> On Sat, 11 Feb 2006, Aurelien Jarno wrote:
>>
>> > Also, I am ready to give some help there. I am first trying to build the
>> > gcc and glibc packages on a mips, but I face a chicken and egg problem
>> > here. Does anybody already have glibc and/or gcc packages for mips? If
>> > not, what is the easiest way to make the bootstrap?
>>
>> Packages for mispel can be found in http://www.helix-hpc.com/apt/. IIRC,
>> the bootstrap involved cycling between the gcc & glibc builds a few times,
>> at one point building static archive libraries and copying them in place to
>> allow the build of the opposite package to proceed further.
>
> AFAICS the patch is incorrect for tri-arch, it adds directories to the
> include path for both the old and the new 32bit ABI at the same time.
>
> This is addressed on mainline by
> http://gcc.gnu.org/ml/gcc-patches/2006-01/msg01318.html
>
> we need to integrate that with patch with Debian's /usr/include/<arch>
> include directory, maybe using the multilib dir names, and providing
> symlinks <multilibdir> -> <archdir>.
>
> Matthias
There was some discussion a while back to forego the creation of new
multiarch dirs and instead reuse the existing cross-compile
directories. Whatever came out of that?
In detail that spells:
/usr/x86_64-linux-gnu/lib
/usr/x86_64-linux-gnu/include
/usr/i386-linux-gnu/lib (or is that i486?)
/usr/i386-linux-gnu/include
[inserting the proper mips archs is left as an exercise]
{the -gnu is new in sid as dpkg-architecture added it and it is needed
to allow for glibc and uclibc libs}
Currently the behaviour differs between sarge and sid in this regard
(at least on amd64):
mrvn@sarge:~% gcc -v -c foo.c
...
gcc version 3.3.5 (Debian 1:3.3.5-13)
...
ignoring nonexistent directory "/usr/local/include"
ignoring nonexistent directory "/usr/x86_64-linux/include"
#include "..." search starts here:
#include <...> search starts here:
/usr/lib/gcc-lib/x86_64-linux/3.3.5/include
/usr/include
End of search list.
mrvn@sid:~% gcc -v -c foo.c
...
gcc version 4.0.3 20060115 (prerelease) (Debian 4.0.2-7)
...
ignoring nonexistent directory "/usr/local/include/x86_64-linux-gnu"
ignoring nonexistent directory "/usr/include/x86_64-linux-gnu"
#include "..." search starts here:
#include <...> search starts here:
/usr/local/include
/usr/lib/gcc/x86_64-linux-gnu/4.0.3/include
/usr/include
End of search list.
Wouldn't it be better to keep with the existing
/usr/<arch>/{include,lib} scheme from cross-compiling?
MfG
Goswin
Reply to: