[ODE] Autotools added to UNSTABLE
kwizatz at aeongames.com
Thu Apr 14 07:43:44 MST 2005
Tanguy Fautre wrote:
> You were right. By default Debian (even the unstable branch) has
> automake 1.4, even though the packages for automake 1.6 to 1.9 are
> I replaced the package automake by automake-1.9 (1.9.5), and now
> everything is working great.
I'll write a note about it in INSTALL :)
> Apparently, the problem only appears when -lGL redirects the linking
> to libGL.a.
> When redirected to NVIDIA drivers libGL.so, the problem goes away.
> However I still suggest including -lpthread if it does not break the
> compilation on other distros.
> The way the old ODE Makefile provides the linker -l flags, always
> redirects to libGL.a; even if NVIDIA drivers are installed.
I added pthread to the library checks, shouldnt be a problem to anyone
since it gets linked only if it is used.
> Actually I was refering to all the arguments (not just -g -O2). I
> don't think any of these options affect the linker; just the compiler.
Right, but that's what autotools does (not sure exactly at which level),
in fact the -g -O2 seem to be the deafult autoconf asigns to CFLAGS and
> Yes, it would be better.
> Now, here you'll go nuts: from what I understand you cannot use the
> same compilation flag -O3 for every part of ODE (for optimization
> purposes, or just as bug workarounds).
> Here is what the current Makefile of ODE does:
> - ODE is compiled with -O2
> - *except* the following files that have to be compiled with -O1 (as
> they have been autotuned before):
> - OPCODE cannot be compiled with -O2, but with -O1
> (OPC_OptimizedTree.c and another unidentified module are generating
> buggy code with -O2, see the comments in ODE makefile for more details).
> Note: I saw that in the latest CVS commit you changed -O2 to -O3. You
> can use -O3 to compile parts of ODE that can be compiled with -O2.
> However, -O3 is a dangerous optimization flag. So I suggest you verify
> it actually provides faster code before enabling it (there are many
> cases where -O3 will provide slower code).
Well, this is going to be tricky, I dont know whether it is posible to
pass separate flags to each source file, I know it is posible to pass
different flags for each target, so I guess I better start poking things
around, so what do you think would be a better default option while I
figure this out?
passing -O1 o -O2 to everything? I figure -O1, but I though I should ask :)
More information about the ODE