使用qmake处理子目录

时间:2011-07-19 15:40:18

标签: qt4 qt-creator qmake

您好我想在我的项目

中做这样的事情
project/
--sources/ -- cpp, h
--forms/ -- ui
--build/ -- object files, mocs
--bin/ -- execute file will appear here
--scripts/ -- this folder should be copied in the bin/ folder after make
project.pro - pro-file

我使用qtcreator,但我发现没有像这样的东西。所以我试着自己编写* .pro文件。现在我有类似

的东西
QT       += core gui

TARGET = project
TEMPLATE = app


SOURCES += src/main.cpp\
        src/mainwindow.cpp

HEADERS  += src/mainwindow.h

FORMS    += src/mainwindow.ui

但这还不够。所以我在寻求帮助。

UPD:另外,在.pro.user中有一些构建目录的东西,但我认为这是错误的。

2 个答案:

答案 0 :(得分:4)

将其添加到文件的底部。这可以满足您的一切需求。我列出了两种将脚本复制到bin目录的方法。第二种方法的功劳归于 jwernerny 。询问您是否有任何问题。

DESTDIR= ./bin          #adds the exe to bin
MOC_DIR = ./build       # Deals with MOCS
OBJECTS_DIR = ./build   #deals with objects

#Two复制脚本的两种方法。

dist.commands += cp -r ./scrpits ./bin 

OR

script_install.path = ./build
script_install.files = ./scripts/*
INSTALLS += script_install

答案 1 :(得分:3)

我认为qmake INSTALLS为问题提供了一个良好的跨平台解决方案,而不依赖于系统上可用的特定命令(即cp)。它只需要运行make install

script_install.path = ./build
script_install.files = ./scripts/*
INSTALLS += script_install