2017-12-18 9 views
3

Wie würde man eine .travis.yml einrichten Cross-Compilation für MIPS Ziel zu tun? Für PowerPC, das ist trivial:MIPS Cross Compilation auf Travis

addons: 
    apt: 
     packages: 
     - gcc-powerpc-linux-gnu 

Da ich Zugriff auf das Paket directly haben.

Für MIPS ich nicht einen Compiler für sie in Ubuntu Trusty finden:

Obwohl scheint es die weiße Liste gesetzt werden:

Es scheint, ich würde ein aktualisierte Ubuntu Bild benötigt (nicht möglich auf Travis):

Die alternative Lösung wäre, einen Pre-Build-MIPS-Compiler zu verwenden, zB:

Aber Dokumentation eher sagt ausdrücklich nicht um diese Dinge zu cachen:

Große Dateien, die schnell zu installieren, aber langsam zum Download tun nicht profitieren von Caching, da sie so lange dauern aus dem Cache zum Download ab die ursprüngliche Quelle:

  • Android SDKs
  • Debian-Pakete
  • JDK Pakete
  • kompilierten Binärdateien
  • Docker Bilder

Wie würden Sie einen Mips Cross-Compiler auf dem Standard-Ubuntu Travis Bild installieren?


-Update habe ich versucht, eine naive Lösung:

addons: 
    apt: 
    sources: 
    - debian-sid 
    packages: 
    - gcc-mips-linux-gnu 

Aber irgendwie:

dpkg-deb: error: archive '/var/cache/apt/archives/gcc-7-base_7.2.0-18_amd64.deb' has premature member 'control.tar.xz' before 'control.tar.gz', giving up 
dpkg: error processing archive /var/cache/apt/archives/gcc-7-base_7.2.0-18_amd64.deb (--unpack): 
subprocess dpkg-deb --control returned error exit status 2 

Es scheint dpkg in Ubuntu/Trusty nicht jene deb-Dateien unterstützen:

Antwort

1

Es scheint, dass ich nicht Container wegen dieser Anforderung, verwenden kann, habe ich aufgegeben und einfach verwendet:

sudo: true 
dist: trusty 

addons: 
    apt: 
    packages: 
    - u-boot-tools 

before_install: 
    - sudo add-apt-repository -y "deb http://archive.ubuntu.com/ubuntu/ xenial main universe" 
    - sudo apt-get -qq update 
    - sudo apt-get install -qq gcc-mips-linux-gnu 

ich immer noch fasziniert von der Tatsache, dass ich gcc-mips-linux-gnu ausdrücklich weiß aufgeführt ist.