On 2007-Jul-27 15:13:48 +0530, Sharad Chandra <[EMAIL PROTECTED]> wrote:
>I am trying gcc -m32 on freebsd 6.1 amd64 env, but it does not seems to be
>working. i also installed /usr/port/lang/linux-libgcc/ but did not help
>what i did is=>
>echo "main () {}" > t.c; gcc -m32 t.c
>/usr/bin/ld: skipping
>incompatible
>/usr/local/lib/gcc/x86_64-portbld-freebsd6.1/4.2.0/gcc/x86_64-portbld-freebsd6.1/4.2.0/libgcc.a
>
>when searching for -lgcc
>/usr/bin/ld: cannot find -lgcc
>collect2: ld returned 1 exit status
>
>how can we make this working?You are using gcc 4.2 from ports. I suspect this only includes the 64-bit libraries. gcc in the base system includes both 32-bit and 64-bit libraries by default but it still suffers the same problem. I had a go at fixing the problem in amd64/112215 but this has other problems and needs more work. Note that non-trivial code will break because <machine/XXXX.h> points at amd64 headers whilst the -m32 compiler needs i386 headers in many cases. There's a non-trivial amount of work needed to actually get cross-building working. I suggest you look throught the FreeBSD-amd64 archives. -- Peter Jeremy
pgp0amIJul1Bq.pgp
Description: PGP signature

