我有一个最小的项目(这里是链接),不与特拉维斯CI集成。我的.travis.yml:
language: cpp
compiler:
- clang++
addons:
apt:
sources:
- boost-latest
packages:
- libboost1.55-all-dev
- cmake
script: mkdir build && cd build && cmake .. && make VERBOSE=1 && cd ..
这可以配置(找到boost),但不能编译(它抱怨缺少std::map<int, int>::emplace()
,所以我想我需要安装一个新的g++来获得新的std库。所以我把这个添加到packages中:
packages:
- gcc-4.8
- g++-4.8
然而,由于奇怪的原因,cmake现在抱怨它缺少boost。知道怎么解决这个问题吗?
你可以看看我的。以下是我在你的文件中看到的一些错误:
- 你想用gcc编译,但你只有clang++作为编译器(在日志中提到)
- 你需要指定gcc的来源,也就是
- ubuntu-toolchain-r-test
那一行 - 你需要导出CXX来选择新的gcc,而不是默认的
- if [ "$CXX" = "g++" ]; then export CXX="g++-4.9"; fi
我仍然试图找出一些关于为什么我不能链接boost的东西,这就是我如何找到你的帖子:)