On Sat May 10, 2008 at 18:31:47 +0800, fei li wrote:
I have compiled l4 on my machine, my cpu type is amd64, when I compiled l4, I got errors as below. In my config file I chose the cpu type as amd64 and kept the other things not changed. Then I used the command make O=/home/licy/Desktop/trunk/build CC="gcc -disable-multilib" to compile. And I got the errors:
/home/licy/Desktop/trunk/build/include/linux-24/linux/string.h:78: warning: conflicting types for built-in function '__builtin_memcmp' /tmp/cc6FM9DF.s: Assembler messages: /tmp/cc6FM9DF.s:2683: Error: suffix or operands invalid for `mov' /tmp/cc6FM9DF.s:2684: Error: Incorrect register `%rax' used with `l' suffix /tmp/cc6FM9DF.s:5510: Error: suffix or operands invalid for `and' /tmp/cc6FM9DF.s:7122: Error: suffix or operands invalid for `and' /tmp/cc6FM9DF.s:7201: Error: Incorrect register `%rax' used with `l' suffix
Whether it's the compiler's problem or we still can't compile l4 on amd64 machines, I hope someone give me some help and thanks a lot. Someone said that I shouldn't use the ia32 headers and just use the amd-64 headers is OK, but I still don't get the results, maybe there are patches for this problem or my compiling way is incorrect, just tell me and i'll have a try.
Which package are you compiling? That's not clear from the output. Generally, amd64 support is only a subset of the ia32 one , so you're better of using ia32.
Adam