I have an application that runs on an embedded Linux device that I am expanding with new features. The new features require GLib so, I am dynamically linking the required libraries to the application.
When I do this and run the application on the device, I get a segmentation fault. This occurs when I dynamically link the new libraries. GDB's backtrace shows that the fault occurs in another custom dynamically linked library. Unfortunately I only get a partial trace with the following message:
Backtrace stopped: frame did not save the PC
Note that I am only linking another shared library and not adding any new code. If I linked the custom library statically the crash goes away. I suspect a memory corruption is happening somewhere else and the conditions (i.e. memory mapping) are just right when the custom library is dynamically linked so that the segmentation occurs.
Anyone know of any good tools and techniques I can use to debug further?