linking with 32-bit libraries on 64-bit systems

Fernando Apesteguía fernando.apesteguia at gmail.com
Wed Jun 27 12:50:37 UTC 2007


On 6/27/07, Mohammed El-Afifi <mohammed_elafifi at yahoo.com> wrote:
>
>
> I'm using fedora 6, the 64-bit edition. I'm trying to build a program that
> links with a 32-bit library. I'm using a command similar to the following:
> g++ -o main /usr/lib/libvorbisfile.so main.cpp
> I'm getting an error that tells me that symbols can't read from the library
> file because it has a wrong format.
> However, when I try to build the program with the 64-bit version of the
> library using a command like the following:
> g++ -o main /usr/lib64/libvorbisfile.so main.cpp
> the program is built successfully.
> I tried to build this same program on a system running fedora 6, the 32-bit
> edition, using the same command:
> g++ -o main /usr/lib/libvorbisfile.so main.cpp
> and it was built successfully.
> It seems that the gcc on fedora 64-bit refuses to link programs with 32-bit
> libraries. Is there a method to force the gcc to link programs to 32-bit
> libraries on a system running the 64-bit edition of fedora 6?

I don't remember it exactly, but I think you have to use -m32 to tell
gcc that you are going to create a 32-bit executable.

Cheers


> Appreciating your feedback.
> ________________________________
> Boardwalk for $500? In 2007? Ha!
> Play Monopoly Here and Now (it's updated for today's economy) at Yahoo!
> Games.
> --
> fedora-list mailing list
> fedora-list at redhat.com
> To unsubscribe:
> https://www.redhat.com/mailman/listinfo/fedora-list
>




More information about the fedora-list mailing list