[ODE] gcc 3.3 compile problem
Chris Jefferson
caj at cs.york.ac.uk
Wed Jun 4 09:40:02 2003
John DeWeese wrote:
> Compiling ODE with gcc 3.3 generates an error in some inline assembly
chunk. I can't decipher it. Anyone have a similar experience?
>
> -bash$ gcc -v
> ...
> gcc version 3.3 (Debian)
>
> -bash$ make
> gcc -c -Wall -fno-rtti -fno-exceptions -Wall -fomit-frame-pointer
-ffast-math -Iinclude -DdNODEBUG -O2 -o ode/src/timer.o ode/src/timer.cpp
> ode/src/timer.cpp:109:17: missing terminating " character
> ode/src/timer.cpp: In function `void getClockCount(long unsigned int*)':
> ode/src/timer.cpp:110: error: parse error before `movl'
> ode/src/timer.cpp:112:28: missing terminating " character
> ode/src/timer.cpp:119:17: missing terminating " character
> ode/src/timer.cpp: In function `void serialize()':
> ode/src/timer.cpp:120: error: parse error before `$0'
> ode/src/timer.cpp:121:14: missing terminating " character
> make: *** [ode/src/timer.o] Error 1
>
> _______________________________________________
> ODE mailing list
> ODE@q12.org
> http://q12.org/mailman/listinfo/ode
without looking at the code I suspect it could be due to the fact that
gcc 3.3 no longer allows multi-line string literals. So you can write
things like
inline asm {
"some asm
some more asm
yet more asm"
}
you have to write:
inline asm {
"some asm"
"some more asm"
"yet more asm"
}
(can't remember exact notation off the top of my head, but you get the idea)
Chris