QMake与GCC的链接问题

时间:2011-08-08 08:08:41

标签: c++ qt gcc makefile qmake

我遇到qmake及其生成的make文件的问题。我的程序需要与两个库相关联。我将它们添加到main.pro中,如下所示。

LIBS += -L lib/somelib1/bin -lsomelib1 -L lib/somelib2/bin -lsomelib2

我怎么安排上面这行qmake告诉gcc这个。

g++ -o programname someobject.o -L lib/somelib1/bin lib/somelib2/bin -lsomelib1 -lsomelib2

问题是它应该是这样的。

g++ -o programname someobject.o -L lib/somelib1/bin -L lib/somelib2/bin -lsomelib1
-lsomelib2

GCC会出现以下错误。

lib/somelib2/bin: file not recognized: Is a directory

提前致谢。

2 个答案:

答案 0 :(得分:2)

你不应该在标志和参数之间加上空格:

LIBS += -Llib/somelib1/bin -lsomelib1 -Llib/somelib2/bin -lsomelib2

LIBS += -L"lib/somelib1/bin" -lsomelib1 -L"lib/somelib2/bin" -lsomelib2

为什么你的静态/导入库在“bin”目录中? “lib”目录中应该有.a个文件。

答案 1 :(得分:-1)

您可以尝试将库搜索路径放在QMAKE_LIBDIR标记下。所以你的qmake文件会有:

QMAKE_LIBDIR += lib/somelib1/bin lib/somelib2/bin
LIBS += -lsomelib1 -lsomelib2