web-dev-qa-db-ja.com

Clionまたはcmakeが環境変数を認識しない

私はCLion IDE、Cmakeを使用しており、CERN ROOTライブラリを使用してHello worldを書き込もうとしています。

CMakeLists.txt

message(STATUS $ENV{ROOTSYS})

〜/ .bashrc

export ROOTSYS="$HOME/tools/root-build/"

ビルド中、CLion $ENV{ROOTSYS}は何らかの理由で空です。ただし、$ENV{PATH}は正しい$PATHを返します。

何を間違えたのですか?

13
A.Sizov

CLion開発者から [〜#〜] faq [〜#〜]

Q:CLionでCMakeに環境変数とパラメーターを渡す方法は?

A:最良の方法は、設定/設定を使用することです。ビルド、実行、展開| CMakeダイアログ。

はどうかと言うと .bashrcファイル、bashでのみ使用されます。 CLionは、実行構成プロセスにbashを使用する必要はありません。

11
Tsyvarev

ファイルに移動->設定->ビルド、実行、展開enter image description here

Pass systemをクリックして...

古いクリオンのために

enter image description here

Clion 2017.2の場合

enter image description hereenter image description here

.bashrcの変数が渡されない

9
Dawid Drozd

Ubuntu 17.04では、次のように変更して永続的な環境変数を設定できます。

    /etc/enviornment

[これは他のバージョンのLinuxでもできると思いますが、私が使用しているシステムのバージョンを提供します。]

たとえば、$ {GOOGLE_MOCK}が設定されていることを前提としたテストケースをコンパイルしています。以下を/etc/environmentファイルに追加しました。これで、CMakeLists.txtファイルのすべてを書き直す必要がなくなりました。

    GOOGLE_MOCK=/usr/local/src/googletest/googlemock
    GOOGLE_TEST_HOME=/usr/local/src/googletest/googletest

Clionがさらに使いやすくなりました。これが他の誰かを助けることを願っています!

1
Gardener

確認できることの1つは.gdbinitです。 Linux上のClionは、.gdbinitを読み取るgdbを呼び出します。 set environment LD_LIBRARY_PATH xxxファイルに.gdbinitが含まれているため、直接exportまたはLD_LIBRARY_PATHを介して、シェルから.bashrcに設定した内容が上書きされます。 CLion環境変数パネルから。

お役に立てれば。

0
xxks-kkk