在ubuntu下交叉编译Qt库总是编译不通过

JINGDIANSHUANGXI 2020-04-24 09:55:59


求大神解惑,使用交叉编译工具编译Qt库但是

Project ERROR: Unknown module(s) in QT_PRIVATE: serialport
Makefile:48: recipe for target 'sub-serialbus-make_first' failed
make[2]: *** [sub-serialbus-make_first] Error 3
make[2]: Leaving directory '/home/jj/my-work/transplant/Qt/qt-everywhere-src-5.13.2/qtserialbus/src'
Makefile:48: recipe for target 'sub-src-make_first' failed
make[1]: *** [sub-src-make_first] Error 2
make[1]: Leaving directory '/home/jj/my-work/transplant/Qt/qt-everywhere-src-5.13.2/qtserialbus'
Makefile:226: recipe for target 'module-qtserialbus-make_first' failed
make: *** [module-qtserialbus-make_first] Error 2
这些无法解决,

根据百度也找到一些方法如:
sudo apt-get install libqt5serialport5-dev libudev-dev

但是依旧没用

安装完成后再次编译依然是以上错误,只好删除编译过的文件,安装包重新解压,再次编译。
依然是以上错误。
请问如何解决?
...全文
4881 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
千疑千寻~ 2021-08-23
  • 打赏
  • 举报
回复

这个解决了吗?
刚好遇到这个问题

我想早点退休 2021-05-12
  • 打赏
  • 举报
回复 1
引用 12 楼 qq_36425629 的回复:
请问,这个问题,你解决了吗
遇到了同样的问题,解决了顺便说一下: 我之前说的第一个方法行不通,后来找到一个办法,因为提示的是缺少qtserialbus, 进入qtserialbus模块编译成功后,把qtserialbus模块中的 include, libs 和mkspecs 目录复制到qtserialbus目录下面,选择合并,然后再编译就可以了。 这些破孩子,问题提问完了也不分享一下解决方法
反斜杠\ 2022-11-15
  • 举报
回复
@我想早点退休 具体的步骤有吗,还没有搞过,咋合并
qq_36425629 2021-03-28
  • 打赏
  • 举报
回复
请问,这个问题,你解决了吗
lym928 2020-08-19
  • 打赏
  • 举报
回复
引用 2 楼 JINGDIANSHUANGXI 的回复:
加了也不起作用呀
提示
ERROR: Unknown command line option '-qtserialbus'.
或ERROR: Unknown command line option '-qtserialport'.
我是这样配置的
sudo ./configure -prefix /usr/local/qt5.13.2 -confirm-license -opensource -shared -release -make libs -xplatform linux-arm-poky-gnueabi-g++ -optimized-qmake -pch -qt-libjpeg -qt-libpng -qt-zlib -no-opengl -no-sse2 -no-openssl -no-cups -no-glib -no-dbus -no-xcb -no-separate-debug-info -no-fontconfig -qtserialbus -qtserialport -nomake examples -nomake tools -nomake tests -no-iconv -skip qtdeclarative -tslib -I/home/jj/my-work/transplant/Qt/tslib-install/include -L/home/jj/my-work/transplant/Qt/tslib-install/lib
如果换成-skip qtserialbus -skip qtserialport跳过,

make后就提示:
make[2]: Entering directory '/home/jj/my-work/transplant/Qt/qt-everywhere-src-5.13.2/qttranslations/translations'
make[2]: *** No rule to make target '/usr/local/qt5.13.2/bin/lrelease', needed by 'assistant_ar.qm'。 停止。
make[2]: Leaving directory '/home/jj/my-work/transplant/Qt/qt-everywhere-src-5.13.2/qttranslations/translations'
Makefile:46: recipe for target 'sub-translations-make_first' failed
make[1]: *** [sub-translations-make_first] Error 2
make[1]: Leaving directory '/home/jj/my-work/transplant/Qt/qt-everywhere-src-5.13.2/qttranslations'
Makefile:760: recipe for target 'module-qttranslations-make_first' failed
make: *** [module-qttranslations-make_first] Error 2
它是其他模块也找不到吗?


我的也是同样这个error,解决了吗?
我想早点退休 2020-05-21
  • 打赏
  • 举报
回复
引用 7 楼 JINGDIANSHUANGXI 的回复:
我是移植arm64位平台的,使用的是gcc-linaro-7.3.1-2018.05-x86_64_aarch64-linux-gnu这个版本的aarch64-linux-gnu-gcc交叉编译工具,但就是编译说qt的模块编译有问题,但是我想用这些模块,有没有什么解决方法?


之前遇见过类似的问题,我当时是进入报错的类里面,比如你这个报错的是qtserialbus, 用生成的qmake单独编译qtserialbus模块,编译过了再整体make
JINGDIANSHUANGXI 2020-05-11
  • 打赏
  • 举报
回复
我是移植arm64位平台的,使用的是gcc-linaro-7.3.1-2018.05-x86_64_aarch64-linux-gnu这个版本的aarch64-linux-gnu-gcc交叉编译工具,但就是编译说qt的模块编译有问题,但是我想用这些模块,有没有什么解决方法?
sonicss 2020-05-03
  • 打赏
  • 举报
回复
5.9.9,5.12.8,5.13.2,我交叉编译都没问题的 5.14.0,5.14.1,5.14.2,我交叉编译有问题的 你这是configure时出错的吧
JINGDIANSHUANGXI 2020-04-27
  • 打赏
  • 举报
回复
arm的呀,下载了qt-everywhere-src-5.13.2.tar.xz
scribbler 2020-04-27
  • 打赏
  • 举报
回复
在交叉编译环境确认OK情况下。
是否指定平台
-DPROJECT_ARCH="arm64"
scribbler 2020-04-26
  • 打赏
  • 举报
回复
你是编译x86下的QT,还是arm的?
dinjay 2020-04-24
  • 打赏
  • 举报
回复
你执行./configure的时候加-qtserialbus 和-qtserialport 模块了么,如果你不需要串口操作,可以在执行./configure的时候加-skip qtserialbus -skip qtserialport跳过这两个模块的编译
反斜杠\ 2022-11-15
  • 举报
回复
@dinjay 跳过Linuxfb就会报错
JINGDIANSHUANGXI 2020-04-24
  • 打赏
  • 举报
回复
加了也不起作用呀 提示 ERROR: Unknown command line option '-qtserialbus'. 或ERROR: Unknown command line option '-qtserialport'. 我是这样配置的 sudo ./configure -prefix /usr/local/qt5.13.2 -confirm-license -opensource -shared -release -make libs -xplatform linux-arm-poky-gnueabi-g++ -optimized-qmake -pch -qt-libjpeg -qt-libpng -qt-zlib -no-opengl -no-sse2 -no-openssl -no-cups -no-glib -no-dbus -no-xcb -no-separate-debug-info -no-fontconfig -qtserialbus -qtserialport -nomake examples -nomake tools -nomake tests -no-iconv -skip qtdeclarative -tslib -I/home/jj/my-work/transplant/Qt/tslib-install/include -L/home/jj/my-work/transplant/Qt/tslib-install/lib 如果换成-skip qtserialbus -skip qtserialport跳过, make后就提示: make[2]: Entering directory '/home/jj/my-work/transplant/Qt/qt-everywhere-src-5.13.2/qttranslations/translations' make[2]: *** No rule to make target '/usr/local/qt5.13.2/bin/lrelease', needed by 'assistant_ar.qm'。 停止。 make[2]: Leaving directory '/home/jj/my-work/transplant/Qt/qt-everywhere-src-5.13.2/qttranslations/translations' Makefile:46: recipe for target 'sub-translations-make_first' failed make[1]: *** [sub-translations-make_first] Error 2 make[1]: Leaving directory '/home/jj/my-work/transplant/Qt/qt-everywhere-src-5.13.2/qttranslations' Makefile:760: recipe for target 'module-qttranslations-make_first' failed make: *** [module-qttranslations-make_first] Error 2 它是其他模块也找不到吗?

16,201

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧