Tomas Carnecky wrote:
Robert Shearman wrote:
This is a bug with the artsc-config utility, not with Wine. All of these types of utilities are fundamentally broken on 64-bit distributions when trying to compile as 32-bit.
And what about fixing first wine instead of complaining about third party utilities?
$ ./configure --prefix=/usr --disable-win16 CFLAGS="-march=k8 -O2 -pipe" LDFLAGS="-L/emul/linux/x86/usr/lib"
$ make ... gcc -m32 -march=k8 -O2 -pipe -o sfnt2fnt sfnt2fnt.o -L../libs/unicode -lwine_unicode -L../libs/port -lwine_port -lfreetype -lz /usr/lib/gcc/x86_64-pc-linux-gnu/4.1.0/../../../../x86_64-pc-linux-gnu/bin/ld: skipping incompatible /usr/lib/libfreetype.so when searching for -lfreetype /usr/lib/gcc/x86_64-pc-linux-gnu/4.1.0/../../../../x86_64-pc-linux-gnu/bin/ld: skipping incompatible /usr/lib/libfreetype.a when searching for -lfreetype /usr/lib/gcc/x86_64-pc-linux-gnu/4.1.0/../../../../x86_64-pc-linux-gnu/bin/ld: cannot find -lfreetype collect2: ld returned 1 exit status make[1]: *** [sfnt2fnt] Error 1
Here wine doesn't use LDFLAGS to link this executable, this breaks compilation on my gentoo box. That's why I have to add "-L/emul/linux/x86/usr/lib" to CFLAGS.
and this maybe isn't the only place, but I don't know enough about makefiles to fix it myself.
You might want to find out why you have to add anything to LDFLAGS. I don't know about other distributions, but on 64-bit Ubuntu passing the -m32 flag to gcc will make it automatically add the standard 32-bit lib directories to the lib path (i.e. /lib32, /usr/lib32, etc.).