Gcc: kompilacja 32bitowego programu na 64bitowym linuxie

Generalnie flaga “-m32” powinna załatwić sprawę, ale problem jest ze zmuszeniem linkera do współpracy:

etam@etam-laptop:~/sourceforge/yasnake/svn> g++ -m32 -O2 -DPORTABLE -lalleg yasnake.cpp -o yasnake

/usr/lib64/gcc/x86_64-suse-linux/4.5/../../../../x86_64-suse-linux/bin/ld: skipping incompatible /usr/lib64/gcc/x86_64-suse-linux/4.5/../../../liballeg.so when searching for -lalleg

/usr/lib64/gcc/x86_64-suse-linux/4.5/../../../../x86_64-suse-linux/bin/ld: skipping incompatible /usr/lib64/liballeg.so when searching for -lalleg

/usr/lib64/gcc/x86_64-suse-linux/4.5/../../../../x86_64-suse-linux/bin/ld: cannot find -lalleg

collect2: ld returned 1 exit status
  • Biblioteka allegro w wersji 32bitowej jest zainstalowana - Dodanie “-L/usr/lib” nie pomaga – Dodane 05.10.2010 (Wt) 16:34 – Problem rozwiązany: W katalogu /usr/lib

    sudo ln -s liballeg.so.4.4 liballeg.so