2

我刚刚从 macports 使用sudo port install boost.

一切正常。现在我有一个项目,我正在尝试使用 makefile 构建。一切都很好,直到涉及到需要 boost 库的文件。

它说:
src/graph.h:20:42: error: boost/graph/adjacency_list.hpp: No such file or directory

该文件实际上位于两个地方:
/opt/local/include/boost/graph/adjacency_list.hpp

/opt/local/var/macports/software/boost/1.42.0_0/opt/local/include/boost/graph /adjacency_list.hpp

在寻找 boost/graph/adjacency_list.hpp 的文件 src/graph.h 中,包含语句在这里:
#include<boost/graph/adjacency_list.hpp>

我该如何进行这项工作?

4

2 回答 2

13

您需要告诉编译器安装 Boost 的基本目录。您可以使用编译器的-I命令行选项来做到这一点:

g++ -I/opt/local/include ...
于 2010-04-28T05:58:15.237 回答
2

将这些路径之一添加到您的包含路径。

您可以使用以下内容包含版本:

#include <boost/version.hpp>

它定义了:

#define BOOST_VERSION 104200
#define BOOST_LIB_VERSION "1_42"

使用它来验证您的编译器是否正在使用您希望它使用的版本。

于 2010-04-28T05:45:28.363 回答