This is the mail archive of the gcc-help@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

RE: Cannot build 32 bit apps with GCC 4.4.0


Yes, with the following result

tovrea@challenger% /home/users/tovrea/local/linux/bin/gcc -m32 -L/usr/lib -L/home/users/tovrea/local/linux/32/lib -L/home/users/tovrea/local/linux/lib/gcc/x86_64-unknown-linux-gnu/4.4.0 -L/home/users/tovrea/local/linux/lib/gcc/x86_64-unknown-linux-gnu/lib64 -o testit testit.o -lz -lbz2 -pthread -lm -lx264 -lm
/usr/bin/ld: skipping incompatible /usr/lib64/libbz2.so when searching for -lbz2
/usr/bin/ld: skipping incompatible /usr/lib64/libbz2.a when searching for -lbz2
/usr/bin/ld: cannot find -lbz2
collect2: ld returned 1 exit status

-----Original Message-----
From: gcc-help-owner@gcc.gnu.org [mailto:gcc-help-owner@gcc.gnu.org] On Behalf Of Brian Budge
Sent: Thursday, August 27, 2009 12:46 PM
To: Tovrea, George W (US SSA)
Cc: gcc-help@gcc.gnu.org
Subject: Re: Cannot build 32 bit apps with GCC 4.4.0

Have you tried tagging -L/usr/lib to your command line?

On Thu, Aug 27, 2009 at 12:40 PM, Tovrea, George W (US
SSA)<george.tovrea@baesystems.com> wrote:
> System:
>
> hostname = challenger
> uname -m = x86_64
> uname -r = 2.6.9-67.ELxenU
> uname -s = Linux
> uname -v = #1 SMP Wed Nov 7 14:17:17 EST 2007
> /bin/arch ? ? ? ? ? ? ?= x86_64
>
> For example:
>
> libx264.a built as 32 bit
>
> Testit.c
> extern int x264_encoder_open();
> int main(void){ x264_encoder_open(); }
>
> /home/users/tovrea/local/linux/bin/gcc -m32 -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -I/home/users/tovrea/local/linux/32/include -std=c99 -fomit-frame-pointer -pthread -c -o testit.o testit.c
>
> Works ok. but
>
> /home/users/tovrea/local/linux/bin/gcc -L/home/users/tovrea/local/linux/32/lib -L/home/users/tovrea/local/linux/lib/gcc/x86_64-unknown-linux-gnu/4.4.0 -L/home/users/tovrea/local/linux/lib/gcc/x86_64-unknown-linux-gnu/lib64 -o testit testit.o -lz -lbz2 -pthread -lm -lx264 -lm
> /usr/bin/ld: skipping incompatible /home/users/tovrea/local/linux/32/lib/libx264.a when searching for -lx264
> /usr/bin/ld: cannot find -lx264
>
> And
>
> tovrea@challenger%/home/users/tovrea/local/linux/bin/gcc -m32 -L/home/users/tovrea/local/linux/32/lib -L/home/users/tovrea/local/linux/lib/gcc/x86_64-unknown-linux-gnu/4.4.0 -L/home/users/tovrea/local/linux/lib/gcc/x86_64-unknown-linux-gnu/lib64 -o testit testit.o -lz -lbz2 -pthread -lm -lx264 -lm
> /usr/bin/ld: skipping incompatible /usr/lib64/libbz2.so when searching for -lbz2
> /usr/bin/ld: skipping incompatible /usr/lib64/libbz2.a when searching for -lbz2
> /usr/bin/ld: cannot find -lbz2
> collect2: ld returned 1 exit status
>
> What am I doing wrong here? I don't see it. I would expect if I select m32 that gcc would select /usr/lib (32 bit libs) rather than /usr/lib64.
>
> Bill Tovrea
>
> BAE Systems
>
> 16550 West Bernardo Drive
> San Diego, CA 92127
>
> Telephone: (858) 592-5292
>
> Pager: (888) 971-4964
>
> E-mail: George.Tovrea@baesystems.com
>
>
>


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]