<div dir="ltr">Hi,<div><br></div><div>I'd like to package a simple application on linux. One main executable, one shared lib, a few Qt shared libs and the xcb platform plugin.</div><div><br></div><div>I could package the app, but I can launch the it only if I set the LD_LIBRARY_PATH manually, or with a wrapper script that does that. Moreover, all the dependent libraries are copied into the bin folder of the package, the plugin is under bin/plugins/platforms that I find a bit messy.</div><div><br></div><div>From what I've learned, setting the RPATH should resolve the first issue. So, I set it to "$ORIGIN/", as everything is in 'bin'. However, the application still does not start without setting LD_LIBRARY_PATH manually, the xcb plugin cannot be loaded.</div><div><br></div><div>What I see with readelf:</div><div><br></div><div>1. The RPATH is set on the main executable.</div><div>2. The RPATH is not set on my shared lib.</div><div>3. The xcb plugin has a runpath set to '$ORIGIN/../../lib'. This is the original value from the qt installation, fixup_bundle did not touch it.</div><div>4. The other qt shared libs do not have either rpath or runpath, although they *did* have runpath in the Qt install directory from where they had been copied over.</div><div><br></div><div>Is this what should happen? 2. and 4. looks wrong to me. 3. is good, but it would be even better if I could instruct the fixup_bundle function to copy the libraries to the lib folder, not the bin, like with the install command.</div><div><br></div><div>Is there any way to get this work?</div><div><br></div><div>Thanks for any hints.</div><div><br></div><div>Cheers,</div><div>Miklos</div><div><br></div></div>