ubuntu - 无法使用 Travis-CI 运行可执行文件 - 不确定我做错了什么

标签 ubuntu github qt5 travis-ci qtserialport

我一直在试图弄清楚如何让 Travis-CI 构建一个仅限 QT5 的应用程序。

我必须是 Qt5,并且包含 QSerialPort 模块,所以没有可用的 Ubuntu 版本(缺少 QSerialPort)。我将 Qt 5.x 安装到 12.04 Ubuntu VM 上,将文件 tar'd 到我放入另一个 repo 的文件中,但是当我下载并提取 Qt5 可执行文件(qmake + 源等)时,我无法运行它们,即使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

最佳答案

不漂亮,但是这个before_install脚本是我用来从 Ubuntu 存储库在 Travis CI 上安装 Qt5 的。

重要的是 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

关于ubuntu - 无法使用 Travis-CI 运行可执行文件 - 不确定我做错了什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26559845/

相关文章:

php - Composer 不会使用我的 fork

c++ - Qt精密定时器计时精度

ubuntu - 多台机器上的 ROS2 : ros2 multicast working, 谈话者/听众不工作

python - PyQt5中的Segmentation fault (core dumped)错误

python - 如何将 GitHub Actions 工作流程验证为 GitHub 应用程序,以便它可以触发其他工作流程?

python - Folium map 无法在 github 上的笔记本中呈现

python - execsql 1.72 无法安装 Python

ubuntu - 查询驱动器可用空间

c++ - 在非 QT 类中使用 Q_ENUMS

c++ - 如何以UI形式打开QML?