gpt4 book ai didi

c++ - Qt #include 不使用外部库

转载 作者:太空宇宙 更新时间:2023-11-04 11:46:08 24 4
gpt4 key购买 nike

我是 Qt 5 和 Qt Creator 的新手。我创建了一个名为 D20Controls 的库项目。我有 D20Controls.lib 文件。在我的项目中,我想使用我的库 D20Controls 的类。所以我右键单击我的项目并执行添加库...我选择外部库并浏览到我的 D20Controls.Lib 文件。现在一切似乎都已正确添加到我的 .pro 文件中。

win32:CONFIG(release, debug|release): LIBS += -L$$PWD/../../build-D20Controls-Desktop_Qt_5_1_1_MSVC2012_64bit-Debug/release/ -lD20Controls
else:win32:CONFIG(debug, debug|release): LIBS += -L$$PWD/../../build-D20Controls-Desktop_Qt_5_1_1_MSVC2012_64bit-Debug/debug/ -lD20Controls

INCLUDEPATH += $$PWD/../../build-D20Controls-Desktop_Qt_5_1_1_MSVC2012_64bit-Debug/debug
DEPENDPATH += $$PWD/../../build-D20Controls-Desktop_Qt_5_1_1_MSVC2012_64bit-Debug/debug

win32:CONFIG(release, debug|release): PRE_TARGETDEPS += $$PWD/../../build-D20Controls-Desktop_Qt_5_1_1_MSVC2012_64bit-Debug/release/D20Controls.lib
else:win32:CONFIG(debug, debug|release): PRE_TARGETDEPS += $$PWD/../../build-D20Controls-Desktop_Qt_5_1_1_MSVC2012_64bit-Debug/debug/D20Controls.lib

但是当我想在我的项目中使用它时 #include <D20Controls>或其中的任何 .h 文件,我无法编译错误,例如:...main.cpp:4: 错误: C1083: 无法打开包含文件: 'D20Controls': 没有那个文件或目录

我怎样才能使用我的库? (我试过静态链接和动态链接)

我错过了什么?

最佳答案

解决这样的问题的步骤:

  1. 在您的文件系统中找到 D20Controls.h。如果有多个,请确定您要包括的正确那个。

  2. 找到一个实际执行的compile命令(例如其中有-o main.omain.cpp的命令),有几个,但它们通常应该在一个项目中具有相同的 -I 标志。如果您从 Qt Creator 编译,请查看屏幕底部的“编译输出”选项卡。如果您从命令行编译,请向上滚动或什至复制粘贴到某个编辑器。

  3. 查看编译命令中是否有 -I...something... 选项,它与正确的包含文件的位置相匹配。

  4. 如果没有,在.pro文件中添加或修复,重新运行qmake,build。


以上适用于查找 header ,-I 标志用于编译命令,它指定包含路径。如果是链接器提示(这种情况通常发生在这种情况下,在你修复包含之后),然后找到链接命令(一个带有一堆 .o 文件,以及类似 -o 的东西final-program-name),并寻找 -L 选项,它指定了链接路径。

关于c++ - Qt #include 不使用外部库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19784070/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com