Unable to compile libBulletSim.so under an ARM environment.
I figured I’ll leave this post out here in the hopes of seeing if the net has any ideas as to why libBulletSim.so does not work for OpenSim. I have tried compiling the newest BulletPhysics3 engine as well as OpenSims preferred 2.82 build as well. It has been tried with compiling with and without -DCMAKE_C_FLAGS=”-fPIC” -DCMAKE_CXX_FLAGS=”-fPIC. both have failed. Here is the screenshot of what the physics engine does when you enable OpenSim.exe with bullet unmanaged.
Yeah, libBulletSim.so crashing in native mode is not pretty!
Checked out the docs for Bullet themselves. Also checked the BUILD.TXT file in the opensim-libs trunk file. Also no good. Here’s the full debug of my mono OpenSim in case anyone cares. The bottom line right now is simple. Even though you can run bullet within Mono using BulletXNA in the opensim configuration file. Running physics inside of mono is also painfully slow and highly inaccurate. Bottom line is although OpenSim 8.x.x has moved away from ODE and on wards to bullet. The Raspberry Pi just is not ready for it! Perhaps if they revisit the libBulletSim.so file there may be hope down the road. Or better still if they allowed OpenSim to access the shared Bullet libraries natively. But for now us Pi users are kind of stuck with ODE Physics.
For those truly interested in the MONO error logs I have made a link that will take you over to the text files that you can examine. It’s easier to view it in raw text mode instead of parsing it through multiple quotations within the blog. Effectivly, the native BulletSim binary is crashing within the MONO environment upon launch.
Update 1/8/2016: Bullet unmanaged now compiles without issue. Read on towards the “Final Thoughts” section of this blog entry.
After a lot of fighting it came right down to debian wheezy not having the right compiler to make bullet 2.82 work properly. Upgrading to Debian Jessie has since resolved this problem. Click here to follow a link to this article and how to compile libBulletSim.so unmanaged.