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

Re: [HOWTO] Compile in 32-bits mode on an AMD64 arch... ?



Emmanuel Fleury <emmanuel.fleury@labri.fr> writes:

> Hi all,
>
> I'm trying to compile a software in 32-bits mode on my AMD64.
>
> I installed the packages:
> o binutils-multiarch

irelevant

> o ia32-libs

irelevant

> o ... and all the packages related to these ones through the dependancies.

What you actualy do need is gcc-3.4 + ia32-libs-dev on sarge and
libc6-dev-i386 on etch/sid.

> Then, I compiled the software with the option '-m32'.
>
> It's quite fine for simple softwares (without linking phase) but as soon
> as we get to link static libraries to objects files I get this error
> messages:
>
>  Compiling using -m32 -g -Wall -DVERBOSE -DENABLE_GAMES
> -DBOOST_DISABLE_THREADS -DVERBOSE -DENABLE_GAMES  -DBOOST_DISABLE_THREADS
> g++  : tiga/tests/server
> /usr/bin/ld: skipping incompatible
> /home/fleury/development/projects/Uppaal-project/Uppaal/trunk/server/modules/lib/libverifier.a
> when searching for -lverifier
> /usr/bin/ld: cannot find -lverifier
> collect2: ld returned 1 exit status
> make[1]: *** [server] Error 1
> make: *** [default] Error 2
>
> Any clue ?

You need a 32bit libverifier. The one from
/home/fleury/development/projects/Uppaal-project/Uppaal/trunk/server/modules/\
lib/ seems to be 64bit. (or you are trying to build a 64bit lib with
the 32bit libverifier).

Did you maybe forget to set LDFLAGS? CFLAGS are usualy only used when
compiling and not when linking and then you try to link all the 32bit
objects into a 64bit library.

> Regards

MfG
        Goswin



Reply to: