13

我使用下面的命令来安装一些东西。

qmake PREFIX=/path/to/my/dir
make
make install

但是我给出的路径是错误的,如何将 PREFIX 更新到正确的位置并删除旧的安装,然后重新安装?

我试过了:

rm -rf /path/to/my/dir/bin    # this is where the program being installed
qmake PREFIX=/path/to/correct/dir
make
make install

但它仍然被安装到旧路径。

4

2 回答 2

11

根据“qmake -h”,这将在全局范围内设置它:

qmake -set prefix /path/to/correct/dir

于 2013-03-08T03:14:42.860 回答
6

对于〜QT 5:

qmake安装目录中为标准安装规则来自qmake变量target.path.

通常,qmake不使用名为 的设置PREFIX,尽管因为这是 Unix 中用于目标安装目录的传统术语,但对于特定项目而言,创建自己的PREFIX变量以在其项目文件中使用是一种足够流行的约定(*.pro)。

查看.pro项目的文件并找出target.path设置的位置。如果它是从环境变量中设置的,即

target.path = $$(PREFIX)  # note the regular parentheses

然后你可以在你运行的环境中传递值qmake

$ PREFIX=/path/to/my/dir qmake 

如果它是从qmake属性设置的,即

target.path = $$[PREFIX]  # note the square brackets

然后您可以永久设置该属性以供将来qmake在命令行上运行:

$ qmake -set PREFIX /path/to/my/dir

如果它是从内部变量设置的,它看起来像

target.path = $$PREFIX

或者

target.path = $${PREFIX}  # note the curly braces

无法qmake从命令行覆盖内部变量的值;您需要找出.pro文件中内部变量的设置位置并进行适当的更改,也许只需编辑.pro文件,或者如果那里有某种逻辑,弄清楚如何让它选择不同的值。

于 2018-07-08T19:58:27.460 回答