簡體   English   中英

如何在CMake腳本中設置PATH環境變量?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM