是否可以使用 travis-ci 构建使用 cmake、gcc-6 和 g++-6 的 C++ 应用程序/项目?
最佳答案
配置 travis 使用正确的编译器有点棘手。 可以这样做:
首先,您需要将发行版设置为可信任(travis-ci 支持的最新版本的 ubuntu)并需要 sudo。
dist: trusty
sudo: require
接下来我们设置语言和编译器:
language: cpp
compiler: gcc
到目前为止一切顺利。现在我们可以开始设置 apt install 配置:
addons:
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- gcc-6
- g++-6
- cmake
这会添加新版本构建工具的 ppa 并安装它们。下一步是设置到新 gcc 和 g++ 的链接。 /usr/local/bin
之前正在搜索/usr/bin
,这样我们新安装的版本 6 编译器就可以通过 gcc
访问。和g++
。你的开始script:
应该看起来像这样:
script:
- sudo ln -s /usr/bin/gcc-6 /usr/local/bin/gcc
- sudo ln -s /usr/bin/g++-6 /usr/local/bin/g++
如果您想验证这些工具的版本,请添加下一行:
- gcc -v && g++ -v && cmake --version
从这些命令返回的版本如下:
gcc: 6.2.0
g++: 6.2.0
cmake: 3.2.2
基本上就是这样。完整的 .travis.yml 如下所示:
dist: trusty
sudo: required
language:
- cpp
compiler:
- gcc
addons:
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- gcc-6
- g++-6
- cmake
script:
# Link gcc-6 and g++-6 to their standard commands
- ln -s /usr/bin/gcc-6 /usr/local/bin/gcc
- ln -s /usr/bin/g++-6 /usr/local/bin/g++
# Export CC and CXX to tell cmake which compiler to use
- export CC=/usr/bin/gcc-6
- export CXX=/usr/bin/g++-6
# Check versions of gcc, g++ and cmake
- gcc -v && g++ -v && cmake --version
# Run your build commands next
关于c++11 - 如何使用 travis-ci 使用现代 cmake 构建现代 c++?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41916656/