【问题标题】:Problems importing libraries to my c++ project, how to fix this?将库导入我的 c++ 项目时出现问题,如何解决?
【发布时间】:2019-01-06 03:03:48
【问题描述】:

我正在使用<XZY> IDE 编译我的程序,但在导入/集成特定库时遇到了一些麻烦。

我收到类似的错误消息

fatal error: 3rdPartyLib.h: No such file or directory

为了一个

#include "3rdPartyLib.h"

声明

ld.exe: cannot find `lib3rdParty.a`

用于指定

3rdParty

在其他库中

至少我收到了一些错误消息,例如

undefined reference to `lib3rdParty::foo()'

我能做些什么来解决这个问题?

【问题讨论】:

    标签: c++ ide


    【解决方案1】:

    这是一个常见的误解,即当前使用的 IDE 会导致出现问题中所述的错误。
    见例子

    该问题几乎与当前使用的 IDE 无关。
    在大多数情况下,解决方案归结为,为实际工具链的编译器/链接器提供适当的路径以搜索包含的头文件,以链接库。

    链接器相关问题的主要适用答案之一是


    大多数常见的 IDE 都提供了针对特定项目进行配置的功能。以下是一些示例


    Eclipse-CDT

    包括路径设置:

    图书馆和图书馆搜索路径设置


    Visual Studio 2013


    代码块


    **DEV C++(流血C++)

    从他们的常见问题解答中:

    9.如何使用 OpenGL 库和其他库?

    Mingw 附带的所有库都位于 Lib 目录中。它们都以以下方式命名:lib*.a 要将库与您的项目链接,只需添加项目选项,更多选项文件:
    -lopengl32
    这是为了包含libopengl32.a 库。要添加任何其他库,只需遵循相同的语法: 键入 -l(小写 L)加上库的基本名称(不带 lib.a 扩展名的文件名)。

    您也可以考虑在其中放置 -L 选项以添加搜索库的目录路径。


    Qt 创建者

    要添加包含路径,您必须打开 .pro 文件,然后添加 INCLUDEPATH 变量的目录。这些路径由空格分隔。可以参考here


    如果以上示例均不适用于您实际使用的 IDE/工具链,我希望您能够理解抽象点:

    如何为您的实际工具链提供编译/链接选项是一个问题。用于设置上下文的 IDE 在这里是一个小问题。

    【讨论】:

      【解决方案2】:

      对于 eclipse,我尽可能使用pkg-config 插件:

      https://marketplace.eclipse.org/content/pkg-config-support-eclipse-cdt

      这个配置窗口失败了:

      【讨论】:

        猜你喜欢
        • 2020-02-21
        相关资源
        最近更新 更多