qt链接在lib\libqt5cored.a很慢

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了qt链接在lib\libqt5cored.a很慢相关的知识,希望对你有一定的参考价值。

参考技术A 是以动态库的方式在使用Qt。windows上使用动态库,编译时链接的是导入库,使用MSVC编译器时扩展名为.lib。由于用的是MinGW编译器,所以导入库的扩展名为a。这些a只包含了地址符号表等,确保程序找到对应函数的一些基本地址信息。在程序运行时,才会由动态链接器将这些动态库(扩展名为dll)进行动态链接。可以找到makefile中所示的这些a,然后用压缩软件打开,会看到里面有一个文件叫做1txt,里面记载的就是压缩包中每一个o文件所对应的接口,总结,使用动态库时,编译的时候链接的是导入库,运行的时候才会链接动态库,windeployexe就是帮你把你所用到的东西从编译器文件夹里拷贝到你当前目录下了。

无法在 Qt 中链接 qwt

【中文标题】无法在 Qt 中链接 qwt【英文标题】:Can't link qwt in Qt 【发布时间】:2012-03-18 20:57:09 【问题描述】:

我使用 LIBS 标志将 qwt 库链接到我的项目。所以在我的项目的 .pro 中,我有

LIBS += -L/home/Desktop/qwt-6.0.1/lib -lqwt

但无论如何 Qt 不识别 qwt 类。我错过了什么??

【问题讨论】:

这是编译或链接的错误吗?如果您编辑您的问题以包含您的错误消息,这将有所帮助。 不,当我尝试输入一个类时它只是说找不到这样的类 您的 IDE 是否简单地表明没有找到此类类,或者您是否收到编译/链接错误?请告诉我们您遇到的确切错误。 它只是表明没有找到这样的类。 【参考方案1】:

我想你忘记包含标题了。

尝试添加以下内容

INCLUDE += /home/Desktop/qwt-6.0.1/include

【讨论】:

【参考方案2】:

我有同样的问题。您必须使用 -L 开关并将您的库路径设置如下:

LIBS+= -L "/home/Desktop/qwt-6.0.1/lib/" -lqwt

将以上行添加到 .pro 文件可解决项目的编译错误。那么对于运行应用程序,您应该使用以下命令将 libqwt.so.6.1.3 链接到系统上的默认库路径:

ln -s /home/Desktop/qwt-6.0.1/lib/libqwt.so.6.1.3 /usr/lib/libqwt.so.6

或简单地使用以下命令更新 LD_LIBRARY_PATH:

export LD_LIBRARY_PATH=/home/Desktop/qwt-6.0.1/lib/lib:$LD_LIBRARY_PATH

我建议你使用第一种方法。

【讨论】:

以上是关于qt链接在lib\libqt5cored.a很慢的主要内容,如果未能解决你的问题,请参考以下文章

编译 Qt-base: error: libQt5Core.so.5: no version information available

qt 编译时出错,请高手指教。

在vs2010编译qt程序时就会出现错误无法打开文件"Qt5Cored.lib"

QT C++ 新手问题 error: collect2: ld returned 1 exit status。请高手指教!

QT调用matlab引擎提示无法解析的外部符号

libQt5Core.so:未定义引用`__cxa_throw_bad_array_new_length@CXXABI_1.3.8