|Subject:||Re: [certi-dev] Problem building CERTI on Mac OS X|
|Date:||Sat, 11 Jun 2011 12:53:54 +0100|
|Hi Eric & Mark,|
Thanks very much for the suggestions: I can get CERTI to compile for Mac OSX 10.6 by means of the "-flat_namespace -undefined suppress" flags. However, when I reference RTIException within my code I get a crash due to a symbol not being found.
Specifically, I am attempting to run an XPlane plugin based on an existing plugin that I have written that works absolutely fine (it's just a very simple "Hello world" type of plugin). However, as soon as I reference RTIException the plugin crashes due to the symbol not being found.
The offending code:
//federate = new AlphaGenericHLAFederate();
// has been commented out to prove to me that this statement is not the issue
// if I comment out the following catch block then there is no problem
catch ( RTI::Exception &e)
// handle error here
// end of offending code
// further error handling
If I comment out the catch ( RTI::Exception &e) section then the plugin works just fine. If I keep it in, then the X-Plane error log shows:
dlerror:dlopen(/X-Plane_9/Resources/plugins/XPlaneHLAPlugin/mac.xpl, 9): Symbol not found: __ZTIN3RTI9ExceptionE
Referenced from: /X-Plane_9/Resources/plugins/XPlaneHLAPlugin/mac.xpl
Expected in: flat namespace
Essentially, from what I can see, this is XPlane's way of saying that the required code hasn't been found, and I guess this will have been because the "-undefined suppress" flag has allowed the CERTI library to compile and link even when not all the code was there.
Have you any other ideas how to work around this please?
|[Prev in Thread]||Current Thread||[Next in Thread]|