2014-10-25 4 views
1

Я пытаюсь выяснить, как сделать Travis-CI встроенным приложением QT5.Не удается запустить исполняемый файл с помощью Travis-CI - Не уверен, что я делаю неправильно

Я должен быть Qt5 и включать модуль QSerialPort, поэтому доступная версия Ubuntu недоступна (отсутствует QSerialPort). Я установил Qt 5.x на 12.04 Ubuntu VM, tar'd доложил файлы в то, что я разместил в другое репо, но когда я загружаю и извлекаю исполняемые файлы Qt5 (qmake + sources и т. Д.), Я не могу их запускать, хотя qmake находится в $ PATH.

Код все размещено на https://github.com/npotts/QuteSerial.

.travis.yml

language: cpp 
compiler: 
    - gcc 

before_install: 
    - wget https://github.com/npotts/Qt5-Travis-CI/raw/master/Qt5.txz 
    - tar xfp Qt5.txz -C ${HOME} 

install: 
    - sudo apt-get update -q 
    - sudo apt-get install build-essential 

script: 
    - export PATH="${HOME}/Qt5.3.2/bin:${PATH}" 
    - which qmake 
    - uname -a 
    - qmake --version 
    - pwd 
    - ls * 
    - ls -alh ${HOME}/Qt5.3.2/* 
    - ../../Qt5.3.2/bin/qmake 
    - vendor/../../Qt5.3.2/bin/qmake 
    - make -j$(nproc) 

Строить Ошибки: https://travis-ci.org/npotts/QuteSerial/builds/38996355

+0

Какая платформа и архитектура являются исполняемыми файлами, скомпилированными? – roidrage

ответ

1

Это не красиво, но это before_install сценарий, что я использую для установки Qt5 на Travis CI из репозиториев Ubuntu.

Важно, чтобы команды apt-get использовались как есть; зависимости не разрешаются правильно, поэтому я их вручную исправляю.

before_install: 
- sudo add-apt-repository "deb http://archive.ubuntu.com/ubuntu trusty universe" 
- sudo add-apt-repository "deb http://archive.ubuntu.com/ubuntu trusty main" 
- sudo apt-get install debian-keyring debian-archive-keyring 
- sudo apt-key update 
- sudo apt-get update 
- sudo apt-get install qt5-default qt5-qmake qtbase5-dev-tools qtchooser qttools5-dev qtbase5-dev libgles2-mesa-dev libqt5gui5 libqt5serialport5-dev libqt5printsupport5 libqt5widgets5 libgles2-mesa libgl1-mesa-dev libgl1-mesa-glx libglapi-mesa libegl1-mesa-dev libpango-1.0-0 
- sudo apt-get install zlib1g-dev libudev-dev 
+0

Это исправлено. Кажется, он немного хакерский, и для установки всех депо требуется некоторое время, но он исправляет исходную проблему. Спасибо за помощь. – npotts

+1

Да, я надеюсь, что они приведут Трэвиса вперед к более новому Ubuntu, чтобы Qt5 стал более приятным. = Р – bweir

0

Я проверил архив, загружаемый, и кажется, что бинарные файлы в нем собраны для 32-битной архитектуры. Окружающая среда Travis CI - 64 бит, и вам нужно будет предоставить двоичные файлы, скомпилированные для 64 бит, чтобы заставить их работать.

Ошибка, которую вы видите, немного сбивает с толку, но это обычная ситуация, когда цель компиляции бина не соответствует архитектуре, на которой она работает.

+0

Спасибо. Мне было интересно, так ли это, но я не видел стандартных ошибок, к которым я привык. Im собирается попытаться исправить это через QT, а затем попытаться это (более неряшливое) решение – npotts

0

У меня есть сомнения относительно настольного приложения QT.

Можно ли осуществлять непрерывную интеграцию через Travis-CI ?? я где-то читал, что непрерывная интеграция невозможна с Travis-CI для приложения QT.

Спасибо, Shyam