qmake 生成以下(以及其他)安装目标的规则:
-$(INSTALL_PROGRAM) "$(TARGET)" "$(INSTALL_ROOT)/$(TARGET)"
Run Code Online (Sandbox Code Playgroud)
我不能INSTALL_ROOT在*.pro文件中设置这样的东西
isEmpty(INSTALL_ROOT) {
INSTALL_ROOT=/usr
}
Run Code Online (Sandbox Code Playgroud)
因为INSTALL_ROOT在某种程度上是生成Makefile的本地.根据我发现到目前为止INSTALL_ROOT默认是空的.它可以像
INSTALL_ROOT=$HOME make install
Run Code Online (Sandbox Code Playgroud)
在调用make时,这很好.但是,我希望能够指定默认安装根/usr.我可以PREFIX按照这里的建议引入一个新变量.然后生成的规则看起来像(如果PREFIX设置为/usr)
-$(INSTALL_PROGRAM) "$(TARGET)" "$(INSTALL_ROOT)/usr/$(TARGET)"
Run Code Online (Sandbox Code Playgroud)
然而
INSTALL_ROOT=$HOME make install
Run Code Online (Sandbox Code Playgroud)
安装/home/<user_name>/usr/$(TARGET)不符合预期的目标.
因此设置INSTALL_ROOT为某个默认值将产生一致的行为,这比添加更好PREFIX,但如何INSTALL_ROOT在*.pro文件中设置?
INSTALL_ROOT它应该被用于什么目的是什么?
我正在尝试将Qwt构建到自定义位置。显然要尝试的是一个PREFIX选项,但它没有效果,make install仍然失败:
$ qmake qwt.pro PREFIX='/my/path'
$ make
$ make install
mkdir: cannot create directory `/usr/local/qwt-5.2.3': Permission denied
Run Code Online (Sandbox Code Playgroud)
这个问题似乎还有许多其他问题和答案,它们也没有效果并且失败:
qmake -set prefix '/my/path'make; INSTALL_ROOT=/my/path; make install还有其他建议吗?
QMake 版本 2.01a在 /opt/Qt4/4.5.2/qtsdk-2009.04/qt/lib
RHEL 5.10
中使用 Qt 版本 4.5.3
我是Qt的新手,拥有C#背景.
我正在为一些项目创建Dym Libs.我希望在编译期间将Header文件移动到build文件夹,或者知道如何在lib中包含Header文件.
有关如何使我的lib成为完整包而无需复制/粘贴头文件或最佳分发方法的任何建议都会很棒.
干杯