Qt:在制作之前运行脚本
Posted
技术标签:
【中文标题】Qt:在制作之前运行脚本【英文标题】:Qt: Run a script BEFORE make 【发布时间】:2013-04-02 14:05:07 【问题描述】:我有一个脚本 runScript.sh,我想在创建应用程序之前运行(设置一些环境变量等)。
使用来自 Running a program/script from QMake 的建议,在我的 .pro 文件中,我在第一行,
QMAKE_POST_LINK += ./runScript.sh
它将在make
上编译并链接我的应用程序,然后运行脚本。
我在 .pro 文件中看到了 how to set the script up as a target 的示例,但我不确定我是否完全掌握了这个概念。有人可以更好地解释它吗,或者(甚至更好)有人知道如何做我想做的更简单的事情(我希望有一个“QMAKE_PRE_LINK”,但它似乎不存在哈哈)?
使用 Qt-4.8.4 和 qmake 2.03
【问题讨论】:
【参考方案1】:您发布的链接很好地说明了这一点。
extralib.target = extra
extralib.commands = echo "Building extralib.."; \ # Run your programs here
make -w -C ../my_libraries/extralib; \
echo "Done building extralib."; \
extralib.depends =
QMAKE_EXTRA_TARGETS += extralib
PRE_TARGETDEPS = extra
所以,可以改写为
extralib.target = extra
extralib.commands = echo "Setuping the envirovment.."; \
export MYVAR="/usr/src/whatever" \
export SECONDVAR="/home/user" \
./runScript.sh
extralib.depends =
QMAKE_EXTRA_TARGETS += extralib
PRE_TARGETDEPS = extra
【讨论】:
所以,extra
是目标 - 啊哈!就像在makefile中声明.PHONY
一样?那么extralib
是什么?它像环境变量吗?
最后,我可以重命名extralib
还是保留关键字?
我自己没有编译器,但是AFAIK,它不是保留关键字,所以你可以在QMAKE_EXTRA_TARGETS += extralib anotherextralib
中添加多个...以上是关于Qt:在制作之前运行脚本的主要内容,如果未能解决你的问题,请参考以下文章
麒麟系统开发笔记:制作安装麒麟系统的启动U盘物理机安装麒麟系统以及搭建Qt开发环境