2013-03-27 41 views
1

我正在使用cmake在x86_64 RHEL5 Linux機器上生成Makefiles。 cmake生成的「安裝」目標安裝到部分可控的路徑(使用DESTDIR和CMAKE_INSTALL_PREFIX)並部分修復。什麼樣的控制我必須在固定的部分,例如:如何控制安裝路徑的cmake部分

myproject-1.2.0/rhel_5/gcc-4.3.3/i386/release/lib/libmyproject.so.1.2.0 
       ^^^^^^   ^^^^ 

我問,因爲我其實交叉編譯使用一個GNU編譯器4.3.3手臂平臺,讓部分是正確的。但是工具鏈文件似乎沒有包含影響「rhel_5」和「i386」部分的變量。

當我轉儲它的規格時,我的手臂交叉編譯器的march = armv4t列出。

回答

1

您應完全控制固定部分。從docs for install

DESTINATION參數指定磁盤上的目錄,上傳的文件將被安裝到。如果給出完整路徑(帶有前導斜槓或驅動器號),則直接使用它。如果給出相對路徑,則相對於CMAKE_INSTALL_PREFIX的值進行解釋。前綴可以在安裝時使用CMAKE_INSTALL_PREFIX變量文檔中說明的DESTDIR機制重新定位。

於是「固定」部分是在你的CMakeLists.txt文件(S)的參數DESTINATIONinstall命令(多個)中指定的路徑。

+0

啊,你說的對,就這麼簡單。我被一些幫手代碼誤導,誤認爲它是內置行爲的行爲。 – timje 2013-03-28 12:28:20