On Mon, 2007-03-12 at 09:22 -0600, Martin.Fuhrer@xxxxxxxxxxxxxx wrote: > Hi all, > > I am trying to compile Wine 0.9.32 from source on an AMD64 desktop running > Red Hat Enterprise Linux 4. I configure as follows: > > % ./configure --prefix=/home/mfuhrer/sw/linux --with-x --enable-wine64 > > This works fine. I run make depend, followed by make, and get the > following error: > gcc -c -I. -I. -I../../include -I../../include -D__WINESRC__ -D_REENTRANT > -fPIC -Wall -pipe -fno-strict-aliasing -Wdeclaration-after-statement > -Wwrite-strings -Wpointer-arith -g -O2 -D__i386__ -o interlocked.o > interlocked.c > {standard input}: Assembler messages: > {standard input}:38: Error: suffix or operands invalid for `push' > {standard input}:39: Error: suffix or operands invalid for `push' > {standard input}:46: Error: suffix or operands invalid for `pop' > {standard input}:47: Error: suffix or operands invalid for `pop' > make[2]: *** [interlocked.o] Error 1 > make[2]: Leaving directory `/mnt/io/home/mfuhrer/sw/src/wine-0.9.32 > /libs/port' > make[1]: *** [port] Error 2 > make[1]: Leaving directory `/mnt/io/home/mfuhrer/sw/src/wine-0.9.32/libs' > make: *** [libs] Error 2 > Any ideas for working around this compile error? I'd be happy to provide > any additional info. Thanks! I would not claim to be up on present compilers, or C, but to me it looks like the compile options. /start useless knowledge -fPIC gives you position independent code, i.e. the kernel can put it anywhere in ram and it will work; the benefit of that is that a hacker can't rely on a program appearing anywhere in particular. PUSH, and POP are assembler instructions, and assembler is _not_ position independent, so ram adresses you might put in as labels get hardcoded into numbers during the assembly process. This is less secure, in that a hacker can rely on this bit of code being at a particular address any time it's running, so he can execute a 'jump to' and land on it. /end useless knowledge There must be a way of compiling without -fPIC. I have a hardened system here (linuxfromscratch) and that provides gcc -fno-pic as a compile option, so that's worth a try. This error seems similar to yours. gcc.gnu.org/ml/gcc-help/2006-06/msg00121.html BTW, there also appears to be a bigger difference between amd and intel in the 64 bit cpus than we are used to on 32 bit. -- With Best Regards, Declan Moriarty. _______________________________________________ wine-users mailing list wine-users@xxxxxxxxxx http://www.winehq.org/mailman/listinfo/wine-users