C++;使用Boost库 < >我想配置Dr.E.IO来自动测试我的C++项目。不幸的是,每次构建都会失败,因为SCON找不到我刚刚安装的头文件。我从这个开始: sudo apt-get install g++ bison flex libgmp-dev glpk libboost-all-dev scons echo 2 | sudo update-alternatives --config gcc scons -Q runProgramsTests

C++;使用Boost库 < >我想配置Dr.E.IO来自动测试我的C++项目。不幸的是,每次构建都会失败,因为SCON找不到我刚刚安装的头文件。我从这个开始: sudo apt-get install g++ bison flex libgmp-dev glpk libboost-all-dev scons echo 2 | sudo update-alternatives --config gcc scons -Q runProgramsTests,c++,continuous-integration,C++,Continuous Integration,但每次都有一条信息: $ scons -Q runProgramsTests Your environment does not seem to have header <boost/container/map.hpp>!! Your environment does not seem to have header <boost/container/set.hpp>!! Your environment does not seem to have header <b

但每次都有一条信息:

$ scons -Q runProgramsTests
Your environment does not seem to have header <boost/container/map.hpp>!!
Your environment does not seem to have header <boost/container/set.hpp>!!
Your environment does not seem to have header <boost/container/vector.hpp>!!
Invalid compiler/libraries installation - build terminated!!

我错过什么了吗?毕竟我安装了
libboost-all-dev
,它应该包含所有的Boost库和头。

最终找到了原因:drone.io使用了旧版本的Ubuntu(精确版),默认情况下使用了Boost库的1.46版,而Boost.Container包是在1.48版本中添加的

将设置修改为:

sudo apt-get install bison flex glpk libboost1.48-all-dev
echo 2 | sudo update-alternatives --config gcc
scons -Q runProgramsTests
一切正常

C_INCLUDE_PATH=/usr/include
CPLUS_INCLUDE_PATH=/usr/include
sudo apt-get install bison flex glpk libboost1.48-all-dev
echo 2 | sudo update-alternatives --config gcc
scons -Q runProgramsTests