gz-rendering
gz-rendering copied to clipboard
Undefined Symbol in libgz-rendering-7(or 9)-ogre2 on Ubuntu 22.04.4 LTS
Environment
- OS Version: Ubuntu 22.04.4 LTS
- Source, on branch gz-rendering7, commit f95826fb52355bb4388c37b6bac6de8430224f98
- Rendering Plugin: Ogre2
- Ogre Versions:
libogre-next-2.3-dev/unknown,now 2.3.1-9osrf~jammy amd64 [installed]
libogre-next-2.3.0/unknown,now 2.3.1-9osrf~jammy amd64 [installed,automatic]
libogre-next-dev/jammy,now 2.2.5+dfsg3-0ubuntu2 amd64 [installed]
I am fairly positive this was caused by a change in the Hlms setupRootLayout interface in this commit of Ogre-next: https://github.com/OGRECave/ogre-next/commit/ea9c99a1ec0210396d48dd28b3bf266e778fd8f3#diff-ddd79ccfa4b6debd7d7161129f18e9b52196690bb885d32736be9bb72f403d1fR225
You can see setupRootLayout got a new signature which is not used in the gz-rendering codebase.
Description
- Expected behavior: Gazebo should start and successfully load the libgz-rendering7-ogre2 engine plugin.
- Actual behavior: Gazebo crashes with:
[ruby $(which gz) sim-15] Error while loading the library [install/lib/gz-rendering-7/engine-plugins/libgz-rendering-ogre2.so]: install/lib/gz-rendering-7/engine-plugins/libgz-rendering-ogre2.so: undefined symbol: _ZN4Ogre7HlmsPbs15setupRootLayoutERNS_10RootLayoutE
[ruby $(which gz) sim-15] [GUI] [Err] [RenderEngineManager.cc:534] Failed to load plugin [gz-rendering-ogre2] : couldn't load library on path [install/lib/gz-rendering-7/engine-plugins/libgz-rendering-ogre2.so].
Steps to reproduce
- Try and build Gz-Garden from source on Ubuntu 22.04.4 LTS
- Run
gz sim
and load up any simulation world.