[英]How to set PATH environment variable in CMake script?
我想通過Mingw編譯器來構建我的源代碼,而不要放在我的系統PATH上。 我在腳本開頭嘗試過此操作:
set(Env{PATH} "c:/MyProject/Tools/mingw/bin/" "c:/MyProject/Tools/mingw/msys/1.0/bin/")
和這個:
set(CMAKE_PROGRAM_PATH "c:/MyProject/Tools/mingw/bin/" "c:/MyProject/Tools/mingw/msys/1.0/bin/")
set(CMAKE_LIBRARY_PATH "c:/MyProject/Tools/mingw/bin/" "c:/MyProject/Tools/mingw/msys/1.0/bin/")
set(CMAKE_SYSTEM_PROGRAM_PATH "c:/MyProject/Tools/mingw/bin/" "c:/MyProject/Tools/mingw/msys/1.0/bin/")
set(CMAKE_SYSTEM_PREFIX_PATH "c:/MyProject/Tools/mingw/bin/" "c:/MyProject/Tools/mingw/msys/1.0/bin/")
第一個變種根本不起作用。 一個建議,我不能覆蓋CMake腳本中環境變量的值。 第二個腳本找到了我的mingw編譯器,但是在運行gcc時捕獲了錯誤(找不到gcc需要的libgmp-10.dll)。 這是因為PATH變量未設置為Mingw。
CMAKE_SYSTEM_PROGRAM_PATH並非要修改,請使用
LIST(APPEND CMAKE_PROGRAM_PATH "c:/MyProject/Tools/mingw/bin/" ...)
您可能會像對待交叉編譯工具鏈一樣對待它,即使您沒有像本例中那樣從Linux交叉編譯到Windows:
http://www.vtk.org/Wiki/CmakeMingw
在遵循該指南之后,您可以在調用cmake時在命令行中設置mingw工具鏈:
~/src/helloworld/ $ mkdir build
~/src/helloworld/ $ cd build
~/src/helloworld/build/ $ cmake -DCMAKE_TOOLCHAIN_FILE=~/Toolchain-mingw32.cmake
那么,如果您經常使用它,則可以在每次要重新生成makefile時都使用別名來限制鍵入該丑陋的-D:
alias mingw-cmake='cmake -DCMAKE_TOOLCHAIN_FILE=~/Toolchain-mingw32.cmake'
編寫腳本文件以啟動CMake。
在Windows上,創建一個批處理文件:
@echo off
set path=c:\MyProject\Tools\mingw\bin;c:\MyProject\Tools\mingw\msys\1.0\bin
"C:\Program Files\CMake 2.8\bin\cmake-gui.exe"
在Linux上,制作一個bash腳本:
export PATH=$PATH:/your/path
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.