qmake
生成以下(在其他人中)規則安裝一個目標:如何使用駐留在生成的Makefiles中的INSTALL_ROOT?
-$(INSTALL_PROGRAM) "$(TARGET)" "$(INSTALL_ROOT)/$(TARGET)"
在*.pro
文件我無法設置INSTALL_ROOT
像這樣的東西
isEmpty(INSTALL_ROOT) {
INSTALL_ROOT=/usr
}
因爲INSTALL_ROOT
是某種本地產生Makefile文件。根據我迄今發現的情況,INSTALL_ROOT
默認爲空。它可以像
INSTALL_ROOT=$HOME make install
當調用make,這很好。不過,我希望能夠指定默認安裝根目錄,比如/usr
。我可以按照建議here引入一個新變量PREFIX
。 然後生成的規則看起來像(如果PREFIX
設置爲/usr
)
-$(INSTALL_PROGRAM) "$(TARGET)" "$(INSTALL_ROOT)/usr/$(TARGET)"
然而
INSTALL_ROOT=$HOME make install
安裝目標/home/<user_name>/usr/$(TARGET)
這是不是人們所期望的。
所以設置INSTALL_ROOT
一些默認值會產生一致的行爲,這是優於添加PREFIX
,但如何在*.pro
文件中設置INSTALL_ROOT
?
INSTALL_ROOT
的目的是什麼?它應該用於所有?