|
|
Q: Why does my application get a segmentation fault immediately when I run on IRIX?
I have a VR Juggler application that uses omniORB. omniORB uses pthreads for its internal threads. I am using the pthreads version of VR Juggler, but my application gets a segmentation fault immediately when I try to run it. There is no output printed--only the segmentation fault error message.
A: Make sure the libraries are specified in the right order when linking the application binary.
omniORB performs static initialization of pthreads data. If the pthreads library does not appear at the very end of the link line (the -lpthread option), there may be problems with the way the runtime loader resolves symbol dependencies. In your makefile or build script or whatever, make sure that the libraries are listed in order of decreasing dependencies. Typically, the VR Juggler libraries should be first, followed by graphics API libraries (Performer, OpenGL, etc.), followed by windowing system libraries, followed by low-level system libraries. Also, make sure that there are no duplications of system libraries (-lX11, -lm, -lpthread, etc.) in your link line.
Back to: LiveFaq
|
|
|
Copyright © 1999-2009 by the contributing authors.
All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding VRJ Wiki? Send feedback
|
|
Revision r1.1 - 20 May 2003 - 16:37 - PatrickHartling
|
Copyright © 1999-2009 by the contributing authors.
All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding VRJ Wiki? Send feedback
|
| |
|