Package: libogre-dev Version: libogre-1.12-dev Severity: normal Dear Maintainer,
libogre-1.12-dev installs Ogre plugins to /usr/lib/x86_64-linux-gnu/OGRE - however, by default, Ogre is not searching in this directory when loading plugins at run time. matthew@matthew-laptop:~$ ls /usr/lib/x86_64-linux-gnu/OGRE/RenderSystem_GL.so.1.12.10 /usr/lib/x86_64-linux-gnu/OGRE/RenderSystem_GL.so.1.12.10 When I try and load RenderSystem_GL using: root.getRenderSystemByName("OpenGL Rendering Subsystem"); I see that Ogre searches the following locations: Loading library RenderSystem_GL.so.1.12.10 8615: find library=RenderSystem_GL.so.1.12.10 [0]; searching 8615: search cache=/etc/ld.so.cache 8615: search path=/lib/x86_64-linux-gnu/tls/haswell/x86_64:/lib/x86_64-linux-gnu/tls/haswell:/lib/x86_64-linux-gnu/tls/x86_64:/lib/x86_64-linux-gnu/tls:/lib/x86_64-linux-gnu/haswell/x86_64:/lib/x86_64-linux-gnu/haswell:/lib/x86_64-linux-gnu/x86_64:/lib/x86_64-linux-gnu:/usr/lib/x86_64-linux-gnu/tls/haswell/x86_64:/usr/lib/x86_64-linux-gnu/tls/haswell:/usr/lib/x86_64-linux-gnu/tls/x86_64:/usr/lib/x86_64-linux-gnu/tls:/usr/lib/x86_64-linux-gnu/haswell/x86_64:/usr/lib/x86_64-linux-gnu/haswell:/usr/lib/x86_64-linux-gnu/x86_64:/usr/lib/x86_64-linux-gnu:/lib/tls/haswell/x86_64:/lib/tls/haswell:/lib/tls/x86_64:/lib/tls:/lib/haswell/x86_64:/lib/haswell:/lib/x86_64:/lib:/usr/lib/tls/haswell/x86_64:/usr/lib/tls/haswell:/usr/lib/tls/x86_64:/usr/lib/tls:/usr/lib/haswell/x86_64:/usr/lib/haswell:/usr/lib/x86_64:/usr/lib (system search path) 8615: trying file=/lib/x86_64-linux-gnu/tls/haswell/x86_64/RenderSystem_GL.so.1.12.10 8615: trying file=/lib/x86_64-linux-gnu/tls/haswell/RenderSystem_GL.so.1.12.10 8615: trying file=/lib/x86_64-linux-gnu/tls/x86_64/RenderSystem_GL.so.1.12.10 8615: trying file=/lib/x86_64-linux-gnu/tls/RenderSystem_GL.so.1.12.10 8615: trying file=/lib/x86_64-linux-gnu/haswell/x86_64/RenderSystem_GL.so.1.12.10 8615: trying file=/lib/x86_64-linux-gnu/haswell/RenderSystem_GL.so.1.12.10 8615: trying file=/lib/x86_64-linux-gnu/x86_64/RenderSystem_GL.so.1.12.10 8615: trying file=/lib/x86_64-linux-gnu/RenderSystem_GL.so.1.12.10 8615: trying file=/usr/lib/x86_64-linux-gnu/tls/haswell/x86_64/RenderSystem_GL.so.1.12.10 8615: trying file=/usr/lib/x86_64-linux-gnu/tls/haswell/RenderSystem_GL.so.1.12.10 8615: trying file=/usr/lib/x86_64-linux-gnu/tls/x86_64/RenderSystem_GL.so.1.12.10 8615: trying file=/usr/lib/x86_64-linux-gnu/tls/RenderSystem_GL.so.1.12.10 8615: trying file=/usr/lib/x86_64-linux-gnu/haswell/x86_64/RenderSystem_GL.so.1.12.10 8615: trying file=/usr/lib/x86_64-linux-gnu/haswell/RenderSystem_GL.so.1.12.10 8615: trying file=/usr/lib/x86_64-linux-gnu/x86_64/RenderSystem_GL.so.1.12.10 8615: trying file=/usr/lib/x86_64-linux-gnu/RenderSystem_GL.so.1.12.10 8615: trying file=/lib/tls/haswell/x86_64/RenderSystem_GL.so.1.12.10 8615: trying file=/lib/tls/haswell/RenderSystem_GL.so.1.12.10 8615: trying file=/lib/tls/x86_64/RenderSystem_GL.so.1.12.10 8615: trying file=/lib/tls/RenderSystem_GL.so.1.12.10 8615: trying file=/lib/haswell/x86_64/RenderSystem_GL.so.1.12.10 8615: trying file=/lib/haswell/RenderSystem_GL.so.1.12.10 8615: trying file=/lib/x86_64/RenderSystem_GL.so.1.12.10 8615: trying file=/lib/RenderSystem_GL.so.1.12.10 8615: trying file=/usr/lib/tls/haswell/x86_64/RenderSystem_GL.so.1.12.10 8615: trying file=/usr/lib/tls/haswell/RenderSystem_GL.so.1.12.10 8615: trying file=/usr/lib/tls/x86_64/RenderSystem_GL.so.1.12.10 8615: trying file=/usr/lib/tls/RenderSystem_GL.so.1.12.10 8615: trying file=/usr/lib/haswell/x86_64/RenderSystem_GL.so.1.12.10 8615: trying file=/usr/lib/haswell/RenderSystem_GL.so.1.12.10 8615: trying file=/usr/lib/x86_64/RenderSystem_GL.so.1.12.10 8615: trying file=/usr/lib/RenderSystem_GL.so.1.12.10 8615: But cannot find the library in any of these paths, and throws the following exception: C++ exception with description "InternalErrorException: Could not load dynamic library RenderSystem_GL. System Error: RenderSystem_GL.so.1.12.10: cannot open shared object file: No such file or directory in DynLib::load at ./OgreMain/src/OgreDynLib.cpp (line 113)" thrown in the test body. I can work around this by adding: PluginFolder=/usr/lib/x86_64-linux-gnu/OGRE to the top of my plugins.cfg file. But, I was wondering if it would be possible for the package to allow Ogre to derive the correct search path automatically - perhaps using rpath? Thanks for maintaining this package. Matthew -- System Information: Debian Release: 11.6 APT prefers stable-updates APT policy: (500, 'stable-updates'), (500, 'stable-security'), (500, 'stable'), (100, 'bullseye-fasttrack'), (100, 'bullseye-backports-staging') Architecture: amd64 (x86_64) Kernel: Linux 5.10.0-21-amd64 (SMP w/12 CPU threads) Kernel taint flags: TAINT_WARN Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8), LANGUAGE=en_GB:en Shell: /bin/sh linked to /usr/bin/dash Init: systemd (via /run/systemd/system) LSM: AppArmor: enabled