blockfactory icon indicating copy to clipboard operation
blockfactory copied to clipboard

When installing the blockfactory and any blockfactory-based plugin in the `/usr` prefix ideally no enviromental variable would need to be set to find the plugins

Open traversaro opened this issue 6 years ago • 4 comments

@traversaro wrote:

Additionally, w.r.t. to debian packaging, it would be good if the default installation prefix was in the search path even without the need to define BLOCKFACTORY_PLUGIN_PATH, so that if in the future we have deb package of BlockFactory + WB-Toolbox, they will just work out of the box without the need to define any env variable.

@diegoferigo replied:

This is more complicated. If we install plugins in one of the default linker folder, we get the same problems due to LD_LIBRARY_PATH we recently discussed in https://github.com/robotology/ycm/issues/199 and https://github.com/robotology/robotology-superbuild/issues/97.

traversaro avatar Jan 29 '19 17:01 traversaro

This is more complicated. If we install plugins in one of the default linker folder, we get the same problems due to LD_LIBRARY_PATH we recently discussed in https://github.com/robotology/ycm/issues/199 and https://github.com/robotology/robotology-superbuild/issues/97.

I am a bit confused. If when installing in /usr on Ubuntu the default installation folder for blockfactory plugins is /usr/lib/x86_64-linux-gnu/blockfactory , why searching it this directory by default there will create any LD_LIBRARY_PATH related problem?

traversaro avatar Jan 29 '19 17:01 traversaro

Anyhow, until we address packaging this is not really important.

traversaro avatar Jan 29 '19 17:01 traversaro

Now I perhaps remember that in YARP we discussed in the past to add some kind of logic "search in the same prefix in which YARP it is installed", but we had problems related to how to implement this in a relocatable way, and you needed to obtained the path to the YARP libraries, and this was not possible/easy on Windows.

traversaro avatar Jan 29 '19 18:01 traversaro

Considering that I never had yet direct experience of packaging archives for debian-based distros, I drop here few links that might be useful in the future:

Probably I didn't explain myself good enough, and probably I might have been wrong. Assuming we are installing the library in /usr/lib/x86_64-linux-gnu/blockfactory, I do not honestly know if the linker checks by default all the subfolders inside /usr/lib/x86_64-linux-gnu. However, also in this case, including in the deb package a proper conf file installed inside /etc/ld.so.conf.d/ might suffice.

I'm not sure, but in light of this maybe also with the current situation installing in the system lib directory would not need any edit to the environment variables.

diegoferigo avatar Jan 29 '19 20:01 diegoferigo