0

如何在 C++ 中添加非标准库,以便我可以像标准库一样添加它,而无需在我的 makefile 中链接 -I 选项?

出现问题是因为我在多台服务器上使用不同的绝对路径目录开发代码。我正在使用 Eigen C++ 库,并且可以在生成文件“-I /usr/local/include/eigen/ -c norm.cpp constants.cpp”中调用以下命令时使其工作。当我传输服务器时出现问题,绝对路径不一样,每次编译时都必须更改它。我知道我可以给它一个绝对路径,但由于我经常使用这个库,我不想创建奇怪的相对路径名。

我正在使用 gcc 并尝试将 eigen 文件夹放在 /usr/include/c++/4.5、/usr/include/c++/4.5.2 和 /usr/local/include/ 中,但它仍然不起作用。我目前使用的是 Ubuntu 11.04。

如何找到 gcc 搜索的标准库以及如何添加非标准库以便可以像“#include”一样包含它。

4

2 回答 2

3

默认情况下,GCC 会在以下目录中查找:

/usr/local/include/
/usr/include/

您可以通过编辑以下 shell 变量来控制 gcc 搜索路径:

$ C_INCLUDE_PATH=/the/new/include/path 
$ export C_INCLUDE_PATH

对于 C++:

$ CPLUS_INCLUDE_PATH=/the/path/to/search 
$ export CPLUS_INCLUDE_PATH

您可以对库路径执行相同的操作:

$ LIBRARY_PATH=/the/path/whatever
$ export LIBRARY_PATH

我希望这能给你答案。:)

于 2013-01-21T17:09:18.783 回答
0

看看ranliblibtool

于 2013-01-28T03:11:20.180 回答