[ODE] Building on MacOSX (and now Linux)

Samuli Riihonen samuli at riihonen.net
Thu May 4 23:38:26 MST 2006


I have no problems with isnanf.
test_basket compiles (and runs) fine, so it's not a general problem  
with gcc or PPC.

As to the linking problem on osx, test_chain1.c will compile if it is  
renamed to cpp.
Linking libode.dylib will also work if the LINK -command in the  
Makefile is changed to CXXLINK.

I tried to understand the automake system to find out where it  
decides which linking-method to use for the said dylib, but failed  
miserably :)

- Samuli

On 4.5.2006, at 23.41, Rodrigo Hernandez wrote:

>
> I am getting the same isnanf error on MinGW, the funny thing is that
> configure does find the function,
> aparently, this has to do with gcc vs g++ (configure uses gcc for it's
> tests), it seems rather odd that gcc has
> a function and g++ doesn't, but it seems to be so, this feels more  
> like
> a GCC bug than anything else.
>
> Nguyen Binh wrote:
>
>> You can write your own IEEE's compatible isNan().
>>
>> On 5/4/06, *Wesley Smith* <wesley.hoke at gmail.com
>> <mailto:wesley.hoke at gmail.com>> wrote:
>>
>>     I've had trouble with isnan on OSX before as well (in other
>>     libraries).  It's available on Linux and some other OSes, but  
>> the OSX
>>     stdc++ doesn't have it.
>>
>>     wes
>>
>>
>>
>>     On 5/4/06, Ryan Gardner < ryebrye at gmail.com
>>     <mailto:ryebrye at gmail.com>> wrote:
>>>
>>> It's pretty darn close to just building and running on OS X out
>>     of the box
>>> from a clean SVN checkout...
>>>
>>> With a little bit of tinkering, I got past my above problem...
>>     although I
>>> don't know if it's the best workaround or not. The link error on
>>     the ODE
>>> library was easy to get past. I just navigated to the
>>     trunk/ode/src and ran
>>> make - then copied the gcc build command it was using - pasted
>>     it in bbedit
>>> - changed the gcc to g++ and pasted it back into the terminal...
>>     then it
>>> linked fine with g++ (no undefined symbol error)
>>>
>>> The same fix worked for the chaintest1.c file that was giving
>>     link errors.
>>>
>>> After getting past both of those minor bumps - the next obstacle
>>     I encounter
>>> is in compiling test_basket.cpp:
>>>
>>> test_basket.cpp: In function 'void nearCallback(void*, dxGeom*,
>>     dxGeom*)':
>>> test_basket.cpp:86: error: 'isnanf' was not declared in this scope
>>> test_basket.cpp:87: error: 'isnanf' was not declared in this scope
>>> test_basket.cpp:88: error: 'isnanf' was not declared in this scope
>>> test_basket.cpp: In function 'void simLoop(int)':
>>> test_basket.cpp:179: error: 'isnanf' was not declared in this scope
>>> test_basket.cpp:183: error: 'isnanf' was not declared in this scope
>>>
>>> I think that isnanf is not implemented on PPC processors - but I
>>     may be
>>> wrong.
>>>
>>> To avoid the error, I commented out those lines (they were
>>     assertions...)
>>>
>>> After that - the entire make process would run fine. (Although
>>     If I made
>>> clean and then tried to make - I would have to manually re-link
>>     it with g++
>>> at each of the sticking points, because I didn't edit any of the
>>     makefiles)
>>>
>>> The tests don't find the DYlibs if the odelib isn't installed...
>>>
>>> To get the tests to run correctly - I did 'sudo make install'...
>>     After that
>>> - the tests run and the thing builds correctly.
>>>
>>> I'm not playing around with the buggy... Yipee!
>>>
>>> Ryan
>>>
>>>
>>> ----------
>>>
>>> "You tried your best and you failed miserably. The lesson is
>>     'never try'."
>>>
>>>
>>>
>>>
>>> Homer Simpson
>>>
>>> On May 4, 2006, at 12:06 AM, Samuli Riihonen wrote:
>>>
>>> Hello...
>>> One glitch.
>>> Would you please change ifdef in drawstuff/src/drawstuff.cpp to be:
>>>
>>> #ifdef HAVE_APPLE_OPENGL_FRAMEWORK
>>> #include <OpenGL/gl.h>
>>> #include <OpenGL/glu.h>
>>> #else
>>>
>>> At the moment it checks against #ifdef MAC_OS_X which is not defined
>>> (although it was before... probably too little sleep for me).
>>> Otherwise the addition now compiles and works for me (OS X 10.4.6,
>>> powerbook G4) with a fresh checkout + autogen.sh + configure + make
>>>
>>> - Samuli
>>>
>>> _______________________________________________
>>> ODE mailing list
>>> ODE at q12.org <mailto:ODE at q12.org>
>>> http://q12.org/mailman/listinfo/ode
>>>
>>>
>>>
>>
>>     _______________________________________________
>>     ODE mailing list
>>     ODE at q12.org <mailto:ODE at q12.org>
>>     http://q12.org/mailman/listinfo/ode
>>
>>
>>
>>
>> -- 
>> --------------------------------------------------
>> Binh Nguyen
>> Computer Science Department
>> Rensselaer Polytechnic Institute
>> Troy, NY, 12180
>> --------------------------------------------------
>>
>> --------------------------------------------------------------------- 
>> ---
>>
>> _______________________________________________
>> ODE mailing list
>> ODE at q12.org
>> http://q12.org/mailman/listinfo/ode
>>
>>
>
> _______________________________________________
> ODE mailing list
> ODE at q12.org
> http://q12.org/mailman/listinfo/ode



More information about the ODE mailing list