【问题标题】:C++ Link external librariesC++ 链接外部库
【发布时间】:2013-11-02 10:14:31
【问题描述】:

我刚开始使用 c++ 编程。 对于我的新作品,我必须下载、安装和使用外部库。它被称为冰。 它是作为一个 .tar 文件组成的,所以我在我的主目录“/home/foo/ice”中分解了它。 现在,有一个目录:“/home/foo/ice/src”,在所有 .h 头文件中,我需要程序。 但是我可以告诉编译器,他在哪里可以找到所有这些新的头文件? 我的意思是只有#include,他显然不知道。

我需要什么:

#include <image.h>

“image.h”在“/home/foo/ice/src”内

问候

【问题讨论】:

  • 库通常附带说明如何安装它的文档。 (通常类似于./configure &amp;&amp; make &amp;&amp; sudo make install)。
  • 而且编译器通常还附带如何设置“包含文件搜索路径”的文档。 (通常是-I&lt;directory&gt;。)
  • 你需要说是哪个编译器,但我会在黑暗中刺伤它是g++clang。然后你用-I /directory/path 说在哪里可以找到#includes,-L /d/p 用来查找库,-l ice 用来链接libice.a

标签: c++ ice


【解决方案1】:

如果你有 gcc 编译器,你可以使用 -I 选项。

来自manual

-I dir:将目录dir添加到要搜索头文件的目录列表中。

所以对你来说应该是这样的:

g++ myprog.cpp -I /home/foo/ice/src -o myprog

但最好安装库,你应该有一些关于如何执行此操作的 readme.txt 或 INSTALL 文件..

【讨论】:

    【解决方案2】:

    您询问了 链接 库的问题,但您的描述显示您的包含路径存在问题,klm123 已经回答了该问题。

    链接的库路径是另一种选择,通常是-Llibpath 检查编译器的选项可能会有所帮助,例如Directory Options of GCC

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-06-05
      • 1970-01-01
      • 1970-01-01
      • 2019-01-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多