我有一個腳本來設置交叉編譯所需的所有變量。這裏只是其中的一部分:cmake:從腳本設置環境變量
export CONFIG_SITE=~/workspace/eldk-5.4/powerpc/site-config-powerpc-linux
export CC="powerpc-linux-gcc -m32 -mhard-float --sysroot=~/workspace/eldk-5.4/powerpc/sysroots/powerpc-linux"
export CXX="powerpc-linux-g++ -m32 -mhard-float --sysroot=~/workspace/eldk-5.4/powerpc/sysroots/powerpc-linux"
export CPP="powerpc-linux-gcc -E -m32 -mhard-float --sysroot=~/workspace/eldk-5.4/powerpc/sysroots/powerpc-linux"
export AS="powerpc-linux-as "
export LD="powerpc-linux-ld --sysroot=~/workspace/eldk-5.4/powerpc/sysroots/powerpc-linux"
export GDB=powerpc-linux-gdb
如果我做source environment-setup-powerpc-linux
,所有的環境變量導入到當前shell會話,我可以編譯我的例子。
是否有可能在cmake中導入這些變量?如果是,如何?
多一點細節:
- 我使用ELDK v 5.4,它的安裝腳本生成一個腳本設置所有環境變量
- 我發現this tutorial,這也解釋瞭如何手動交叉設置編譯,但不是如何使用腳本,它設置的一切
- 如果我設置cmake之前調用腳本,一切正常,我可以交叉編譯,但我希望cmake調用腳本
set(ENV {PATH}「/ home/martink」)爲任何人工作?它不工作在我的 –
@PriteshAcharya有一個錯字,類型集($ ENV {PATH}「/ home/martink」) –
@JeanDavy我不認爲這是一個錯字集($ ENV {PATH}「/ home/martink「)會將您指定$ ENV {PATH}的PATH的當前值作爲變量名稱,因此它不會設置您認爲正在設置的內容。我只是偶然做到了這一點!一個更常見的路徑設置將被設置(ENV {PATH}「/ home/martink:$ ENV {PATH}」),這就是'$'的必要位置。 –