Qt - QMAKE_LIBDIR vs LIBS

时间:2014-07-01 13:07:30

标签: qt qmake

可以找到许多使用QMAKE_LIBDIR指定其他库目录的示例。

Qt手册说:

  

QMAKE_LIBDIR

     

指定系统库路径列表。此变量的值通常由qmake或qmake.conf处理,很少需要修改。

到目前为止,每当我想在我的一个项目中使用外部库并且不想使用库向导时,我总是使用“unix:-L $$(LIB_DIR)-l”或类似的东西。

我是否可以断定,即使手册中没有相应的声明,也不鼓励通过-L指定路径? (根据this post劝阻 - 但为什么?)

提前致谢。

2 个答案:

答案 0 :(得分:5)

在某种程度上有相应的陈述。将-Lpath/to/dir放入LIBS变量:

http://doc.qt.io/qt-5/qmake-variable-reference.html#libs

  

LIBS

     

指定要链接到项目的库列表。如果你   使用Unix -l(库)和-L(库路径)标志,qmake句柄   Windows上正确的库(即传递完整的路径)   库到链接器)。该库必须存在才能找到qmake   -l lib所在的目录。

     

例如:

     

unix:LIBS + = -L / usr / local / lib -lmath

     

win32:LIBS + = c:/mylibs/math.lib

因此,在-L中使用LIBS实际上是受到Qt文档的鼓励

答案 1 :(得分:1)

您可以在外部设置QMAKE_LIBDIR而无需修改*.pro文件,这与LIBS不同:

qmake QMAKE_LIBDIR=~/build/obj/