0

问题已解决,但我想知道为什么会出现问题。

我正在使用 Qt Creator 并链接外部库。在我使用的 .pro 中

LIBS += -LC:/Flicker/empty/ -lLabview_DLL

一切顺利,程序运行正常。

使用

LIBS += -LC:/DATA/Vincent/SemiRead/ -lLabview_DLL

编译工作没有错误,但在程序中调用库函数之一会导致崩溃。

由于两个文件夹中的 Labview_DLL.dll 相同,我想知道可能是什么问题。我发现在最后一种情况下,还有一个同名的附加 .lib 文件。删除此文件后,该文件夹的所有内容也都可以使用。它只是对现有 .lib 文件的偏好吗?操作系统是Win7-64

4

1 回答 1

0

链接到 dll,基于 dll 的位置,在编译时不是必需的。下面的链接可能会有所帮助。

静态链接与动态链接

http://msdn.microsoft.com/en-us/library/9yd93633.aspx

http://qt-project.org/doc/qt-4.8/qmake-project-files.html#declaring-other-libraries

正因为如此,“LIBS +=”调用试图做一个到库的静态链接。

希望有帮助。

于 2013-03-26T18:10:14.947 回答