githubで開発しているプロジェクトのCIを実施したいが、C++11をサポートするコンパイラが必要だ。さらに、MPIを使ったプロジェクトではmipcxxとmpirunが必要だ。Github上のプロジェクトのCIを行ってくれるサービスはCircle CIなどもあるが、C++には対応していない。このエントリを書いている時点ではTravis CIが唯一の選択肢のようだ(ビルドボットを自分で書くなら別だが)。
いくつかのサイトを参考にさせていただいて、以下のようなコードを記述してテストを実行することができた
Travis CI で最新の Clang (3.5) を使ってテストする - sorry, uninuplemented:
Travis CI で最新の gcc を使って自動テスト - sorry, uninuplemented:
Travis CIとは関係ないが、MPIで最新のコンパイラを使うためには、mpichなら -cxx=clang++-3.5
などのようにコンパイラを指定すれば良い。
language: cpp before_install: - sudo add-apt-repository --yes ppa:ubuntu-toolchain-r/test - wget -O - http://llvm.org/apt/llvm-snapshot.gpg.key | sudo apt-key add - - sudo add-apt-repository --yes 'deb http://llvm.org/apt/precise/ llvm-toolchain-precise-3.5 main' - sudo add-apt-repository --yes 'deb http://llvm.org/apt/precise/ llvm-toolchain-precise main' - sudo apt-get update -qq - sudo apt-get install -qq mpich2 libmpich2-3 libmpich2-dev - sudo apt-get install -qq g++-4.9 g++-5 - sudo apt-get install -qq libstdc++-4.9-dev libstdc++-5-dev - sudo apt-get install -qq clang-3.5 script: bash ./test.sh travis