我刚刚使用sudo port install boost
从macports安装了boost 1.42.0。
一切都很好。现在我有一个项目,我正在尝试使用makefile构建。一切都很好,直到它需要boost库的文件。
它说:
src / graph.h:20:42:错误:boost / graph / adjacency_list.hpp:没有这样的文件或目录
该文件实际上位于两个地方:
/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
在文件src / graph.h中,它正在寻找boost / graph / adjacency_list.hpp,include语句在这里:
#include<boost/graph/adjacency_list.hpp>
我如何使这项工作?
答案 0 :(得分:13)
您需要告诉编译器安装Boost的基本目录。您可以使用编译器的-I
命令行选项来执行此操作:
g++ -I/opt/local/include ...
答案 1 :(得分:2)
将其中一个路径添加到包含路径。
您可以使用以下内容包含该版本:
#include <boost/version.hpp>
定义:
#define BOOST_VERSION 104200
#define BOOST_LIB_VERSION "1_42"
使用此命令验证编译器是否使用了您希望它使用的版本。