2015-10-18 4 views
5

Eigentlich diesen Schnipsel Ich verwende eine gewünschte Compiler-Version innerhalb einer travis Virtual MachineTravis CI, aktualisiert CMake die Pakete mit Cache

- os: linux 
    compiler: clang 
    addons: 
    apt: 
     sources: ['ubuntu-toolchain-r-test', 'llvm-toolchain-precise-3.5'] 
     packages: ['clang-3.5'] 
    env: COMPILER=clang++-3.5 

vorinstallieren Dies hat den Vorteil der Ausführung das Build innerhalb einer Maschine hat ohne Verwendung von sudo was zu einem schnelleren Build führt.

Wie verwende ich das, um cmake 2.8.12 (oder aktueller) sowohl unter Linux als auch unter osx zu installieren, wenn Sie travis verwenden? Ich habe versucht,

- os: linux 
    compiler: clang 
    addons: 
    apt: 
     sources: ['ubuntu-toolchain-r-test', 'llvm-toolchain-precise-3.5', 'add-apt-repository'] 
     packages: ['clang-3.5', 'ppa:kalakris/cmake'] 
    env: COMPILER=clang++-3.5 

ohne Erfolg

Antwort

8

Um Cmake von kalakris, Gebrauch zu installieren:

addons: 
    apt: 
     packages: 
     - cmake 
     sources: 
     - kalakris-cmake 

Für eine neuere CMake (von https://github.com/ldionne/hana/blob/master/.travis.yml)

if [[ "${TRAVIS_OS_NAME}" == "linux" ]]; then 
    CMAKE_URL="http://www.cmake.org/files/v3.3/cmake-3.3.1-Linux-x86_64.tar.gz" 
    mkdir cmake && travis_retry wget --quiet -O - ${CMAKE_URL} | tar --strip-components=1 -xz -C cmake 
    export PATH=${DEPS_DIR}/cmake/bin:${PATH} 
else 
    brew install cmake 
fi 

Ein voller Schnipsel in Ihr Fall ist:

- os: linux 
    compiler: clang 
    addons: 
    apt: 
     sources: ['ubuntu-toolchain-r-test', 'llvm-toolchain-precise-3.7', 'kalakris-cmake'] 
     packages: ['clang-3.7', 'cmake'] 
    env: COMPILER=clang++-3.7 
+0

Ich scheitere die Syntax für die Verwendung sowohl cmake und bestimmten GCC, wie kann ich '- cmake',' - kalakris-cmake' mit den Skripten in meinem Beispiel oben integrieren? danke – GameDeveloper

+1

kannst du entweder eine oneliner-Liste mit [] oder eine mehrzeilige Liste mit Bindestrichen schreiben. So können Sie Quellen schreiben: ['ubuntu-toolchain-r-test', 'llvm-toolchain-precise-3.5', 'kalakris-cmake'] 'und' packages: ['clang-3.5', 'cmake'] ' –