2012-08-07 142 views
7

一些信息的消息來源說:CMAKE_INSTALL_PREFIX環境變量 - 不起作用?

您可以通過設置 CMAKE_INSTALL_PREFIX環境變量

如果我在一個文件中做更改安裝目錄(前綴):

export CMAKE_INSTALL_PREFIX=$KDEDIR 

和然後來源,並檢查CMAKE_INSTALL_PREFIX環境變量是否設置,當我這樣做:

[email protected]:~/kde/build/kde-workspace$ cmake ../../src/kde-workspace/ 

然後:

[email protected]:~/kde/build/kde-workspace$ make install 

它試圖將文件安裝到系統目錄。

如果我指定CMAKE_INSTALL_PREFIX作爲參數傳遞給CMake的:

[email protected]:~/kde/build/kde-workspace$ cmake -DCMAKE_INSTALL_PREFIX=$KDEDIR ../../src/kde-workspace/ 

然後make install工程確定 - 將文件安裝到$KDEDIR

是文檔錯誤有關設置環境變量具有相同名稱的可能性,或者我做錯了什麼?

回答

7

CMAKE_INSTALL_PREFIX必須被設置爲可變的CMake:

cmake -DCMAKE_INSTALL_PREFIX:PATH=/path/to/installation/directory .. 

但也的CMake的supports usingDESTDIR環境變量:

export DESTDIR=/path/to/installation/directory 
make install 
+1

雖然CMake確實使用'DESTDIR',如果它被設置,它不會忽略'CMAKE_INSTALL_PREFIX';而是將它們連接起來。因此,在這個例子中,你最終將安裝到'/ path/to/installation/directory/usr/local /'。當然,你可以將'CMAKE_INSTALL_PREFIX'設置爲空,但如果這是一種有用的可能性,那麼你可以將它設置爲所需的路徑。 – 2015-11-09 20:35:47

+0

@sage我用一個例子更新了答案。 – sakra 2016-07-19 20:32:52

3

CMAKE_INSTALL_PREFIX是CMake的變量,而不是一個環境變量。它可以設置爲cmake -DCMAKE_INSTALL_PREFIX=yourpath