J'utilise CLion IDE, Cmake et j'essaie d'écrire Hello world en utilisant la bibliothèque CERN ROOT.
CMakeLists.txt :
message(STATUS $ENV{ROOTSYS})
~/.bashrc :
export ROOTSYS="$HOME/tools/root-build/"
Pendant la construction de CLion, $ENV{ROOTSYS}
est vide pour une raison quelconque. Mais $ENV{PATH}
renvoie $PATH
correct.
Qu'est-ce que j'ai mal fait?
Des développeurs CLion _ FAQ :
Q: Comment passer des variables et des paramètres d’environnement à CMake dans CLion?
R: Le meilleur moyen est d'utiliser Préférences/Paramètres | Construction, exécution, déploiement | Dialoguer.
Quant au fichier .bashrc
, il n’est utilisé que par bash. CLion n'a pas besoin d'utiliser bash pour exécuter le processus de configuration.
Sur Ubuntu 17.04, vous pouvez définir une variable d’environnement permanente en modifiant
/etc/enviornment
[Je suppose que vous pouvez le faire dans d'autres versions de Linux, mais je fournis la version du système que j'utilise.]
Par exemple, je compile des scénarios de test qui supposent que $ {GOOGLE_MOCK} a été défini. J'ai ajouté ce qui suit à mon fichier /etc/environment
et je n'ai plus besoin de réécrire tous mes fichiers CMakeLists.txt:
GOOGLE_MOCK=/usr/local/src/googletest/googlemock
GOOGLE_TEST_HOME=/usr/local/src/googletest/googletest
Clion est devenu beaucoup plus utilisable. J'espère que ceci aide quelqu'un d'autre!
Une chose que vous pouvez vérifier est le .gdbinit
. Clion sur Linux invoquera la gdb, qui lira le .gdbinit
. Il se trouve que j'ai set environment LD_LIBRARY_PATH xxx
dans mon fichier .gdbinit
, qui remplace tout ce que vous avez défini LD_LIBRARY_PATH
à partir de Shell, que ce soit par le biais de export
directe ou de .bashrc
, ou du panneau de variables d'environnement CLion.
J'espère que cela t'aides.