J’utilise Netbeans sous Linux (Ubuntu 9.04) pour construire un projet C.
Comment passer une variable d’environnement afin qu’elle soit visible par le Makefile?
Si je fais une export MYVAR="xyz"
normale export MYVAR="xyz"
et ensuite lancez make
depuis la ligne de commande, cela fonctionne bien évidemment.
Mais Netbeans ne semble pas utiliser l’environnement .bashrc
, donc si je clique sur “construire” dans Netbeans, le make échoue.
Fait intéressant, le problème ne semble pas se produire sur MacOSX – j’ai ajouté la variable à ~/.MacOSX/environment.plist
, et cette valeur est visible pour Netbeans.
J’ai trouvé ce post qui proposait de modifier ~/netbeans-6.8/etc/netbeans.conf
. J’ai essayé ceci, en ajoutant -J-DMYVAR=xyz
à la fin de netbeans_default_options
, à savoir:
netbeans_default_options="-J-client -J-Xverify:none -J-Xss2m -J-Xms32m -J-XX:PermSize=32m -J-XX:MaxPermSize=200m -J-Dapple.laf.useScreenMenuBar=true -J-Dsun.java2d.noddraw=true -J-DMYVAR=xyz"
Mais cela ne semblait pas fonctionner.
Modifier:
Cette réponse n’est peut-être pas valable pour les versions d’Ubuntu basées sur Unity.
Le problème n’est en fait rien à voir avec NetBeans – il est lié au lanceur Ubuntu (c’est-à-dire Gnome).
Comme l’explique cet article de blog , vous devez append des variables au fichier plutôt obscur ~/.gnomerc
(No Mercy? 🙂 pour qu’elles soient transmises aux applications démarrées avec Launcher!
Donc, éditez simplement ~/.gnomerc
et ajoutez les variables comme vous le feriez pour ~/.bashrc
, par exemple:
export MYVAR="xyz"
et déconnexion / connexion.