Comment peut-LD_LIBRARY_PATH être changé à l'intérieur de CMake?
J'ai un local de la bibliothèque partagée qui n'est pas dans $LD_LIBRARY_PATH.
Je veux exécuter mon exécutable, mais depuis il ne peut pas trouver la bibliothèque partagée dans les dossiers système, il affiche "error while loading shared libraries".
Un correctif pour ce qui est de l'exportation d'un nouveau LD_LIBRARY_PATH contenant la bibliothèque locale dossier.
Comment puis-je exporter automatiquement cette variable d'environnement au sein de CMake?
OriginalL'auteur Daniel Saad | 2015-05-21
Vous devez vous connecter pour publier un commentaire.
Si votre partagée lib n'est pas construit de la même CMake projet de votre exécutable, vous pouvez utiliser le CMake rpath la manutention, comme ceci:
Lorsque vous exécutez
make install
, CMake automatiquement le chemin d'exécution de l'exécutable de votre bibliothèque partagée.Si votre bibliothèque partagée est construit de la même CMake projet, utilisez ceci:
Dans ce cas, vous devez ajouter vous-même le répertoire où votre bibliothèque partagée sera installé dans le chemin d'exécution.
Pour plus d'informations, vous pouvez lire CMake rpath manutention
OriginalL'auteur explo91
Vous pouvez définir la bibliothèque partagée à l'exécution chemin de recherche à l'aide de la
-rpath
linker option:OriginalL'auteur hank