2012-12-31 63 views
1

我有項目中,頭文件是在不同的子文件夾(/配置/ .H; /線程/ .H等)在QT項目文件 它們包括像:配置QMAKE用於安裝頭不同的子文件夾

HEADERS += $$PWD/src/*.h 
HEADERS += $$PWD/src/config/*.h 

然後安裝被描述爲簡單:

headers.files = $$HEADERS 
headers.path = $$INSTALL_INC_DIR/proj 

使用此LIB將包括從安裝目錄文件的一些其他項目,並且發生問題 - 所有的.h文件複製到同一個文件夾,子文件夾不在代碼中它們包含在子文件夾中(#include <proj/config/config.h>)。

是否有可能告訴qmake(或實際上nmake),當複製文件保持原始文件夾結構?

回答

3

這個工作對我來說:

headerinstall.pri:

for(header, INSTALL_HEADERS) { 
    path = $${INSTALL_PREFIX}/$${dirname(header)} 
    eval(headers_$${path}.files += $$header) 
    eval(headers_$${path}.path = $$path) 
    eval(INSTALLS *= headers_$${path}) 
} 

在你的.pro文件的末尾:

INSTALL_PREFIX = /tmp/installprefix 
INSTALL_HEADERS = $$HEADERS 
include(headerinstall.pri) 
+0

這是一個有點很久以前,但我會接受回答。並嘗試,也許它現在也會有用。 – Dainius

相關問題