找回密码
 立即注册
收起左侧

Qt5.11交叉编译错误:Qmake spec does not set MAKEFILE_GENERATOR

0
回复
8695
查看
[复制链接]
累计签到:4 天
连续签到:1 天
来源: 2018-6-6 21:53:25 显示全部楼层 |阅读模式
1Qter豆
本帖最后由 devin 于 2018-6-6 22:00 编辑

在Debian9.4虚拟机上交叉编译Qt5.11.0源文件,准备移植到arm上。出现了以下错误:Project ERROR: Qmake spec does not set MAKEFILE_GENERATOR.

具体操作过程如下1.已经装好了arm-linux-gnueabihf-toolchain
  1. devin@debian-PC:/usr/bin$ ls arm-linux-gnueabihf*
  2. arm-linux-gnueabihf-addr2line     arm-linux-gnueabihf-gcov-dump-6
  3. arm-linux-gnueabihf-ar            arm-linux-gnueabihf-gcov-tool-6
  4. arm-linux-gnueabihf-as            arm-linux-gnueabihf-gprof
  5. arm-linux-gnueabihf-c++filt       arm-linux-gnueabihf-ld
  6. arm-linux-gnueabihf-cpp-6         arm-linux-gnueabihf-ld.bfd
  7. arm-linux-gnueabihf-dwp           arm-linux-gnueabihf-ld.gold
  8. arm-linux-gnueabihf-elfedit       arm-linux-gnueabihf-nm
  9. arm-linux-gnueabihf-g++           arm-linux-gnueabihf-objcopy
  10. arm-linux-gnueabihf-g++-6         arm-linux-gnueabihf-objdump
  11. arm-linux-gnueabihf-gcc           arm-linux-gnueabihf-pkg-config
  12. arm-linux-gnueabihf-gcc-6         arm-linux-gnueabihf-ranlib
  13. arm-linux-gnueabihf-gcc-ar-6      arm-linux-gnueabihf-readelf
  14. arm-linux-gnueabihf-gcc-nm-6      arm-linux-gnueabihf-size
  15. arm-linux-gnueabihf-gcc-ranlib-6  arm-linux-gnueabihf-strings
  16. arm-linux-gnueabihf-gcov-6        arm-linux-gnueabihf-strip
复制代码
2.已经装好了以下必要的库
  1. libfreetype6-dev        
  2. libfontconfig1-dev
  3. libxext-dev
  4. libxfixes-dev
  5. libxrender-dev
  6. libxi-dev
  7. libxkbcommon-dev
  8. libxcb1-dev
  9. libx11-xcb-dev
  10. libxcb-glx0-dev
  11. libxcb-keysyms1-dev
  12. libxcb-image0-dev
  13. libxcb-shm0-dev
  14. libxcb-icccm4-dev
  15. libxcb-sync0-dev
  16. libxcb-xfixes0-dev
  17. libxcb-shape0-dev
  18. libxcb-randr0-dev
  19. libxcb-render-util0-dev
复制代码
3.修改qmake.conf文件:
  1. devin@debian-PC:~/qt-src/qt-everywhere-src-5.11.0/qtbase/mkspecs/linux-arm-gnueabihf-g++$ more qmake.conf
  2. #
  3. # qmake configuration for building with arm-linux-gnueabihf-g++
  4. #

  5. MAKEFILE_GENERATOR      = UNIX
  6. TEMPLATE                = app
  7. CONFIG                  += qt warn_on release incremental link_prl gdb_dwarf_index
  8. QT                      += core gui
  9. QMAKE_INCREMENTAL_STYLE = sublib

  10. include(../common/linux.conf)
  11. include(../common/gcc-base-unix.conf)
  12. include(../common/g++-unix.conf)

  13. # modifications to g++.conf
  14. QMAKE_CC                = arm-linux-gnueabihf-gcc
  15. QMAKE_CXX               = arm-linux-gnueabihf-g++
  16. QMAKE_LINK              = arm-linux-gnueabihf-g++
  17. QMAKE_LINK_SHLIB        = arm-linux-gnueabihf-g++

  18. # modifications to linux.conf
  19. QMAKE_AR                = arm-linux-gnueabihf-ar cqs
  20. QMAKE_OBJCOPY           = arm-linux-gnueabihf-objcopy
  21. QMAKE_NM                = arm-linux-gnueabihf-nm -P
  22. QMAKE_STRIP             = arm-linux-gnueabihf-strip

  23. load(qt_config)
复制代码
4.在~/qt-src/qt-everywhere-src-5.11.0中新建脚本文件 cfg_arm.sh
  1. devin@debian-PC:~/qt-src/qt-everywhere-src-5.11.0$ more cfg_arm.sh
  2. #!/bin/sh

  3. ./configure  \
  4. -v  \
  5. -prefix /opt/qt5.11.0-armhf  \
  6. -opensource  \
  7. -confirm-license  \
  8. -release  \
  9. -xplatform linux-arm-gnueabihf-g++ \
  10. -make libs  \
  11. -qt-libjpeg \
  12. -qt-libpng \
  13. -qt-zlib \
  14. -skip qtpurchasing  \
  15. -nomake examples  \
  16. -nomake tests  \
  17. -make tools
复制代码

5.运行cfg_arm后出现以下错误:
   Project ERROR: Qmake spec does not set MAKEFILE_GENERATOR.
  1. root@debian-PC:/home/devin/qt-src/qt-everywhere-src-5.11.0# ./cfg_arm.sh
  2. + cd qtbase
  3. + /home/devin/qt-src/qt-everywhere-src-5.11.0/qtbase/configure -top-level -v -prefix /opt/qt5.11.0-armhf -opensource -confirm-license -release -xplatform linux-arm-gnueabihf-g++ -make libs -qt-libjpeg -qt-libpng -qt-zlib -skip qtpurchasing -nomake examples -nomake tests -make tools
  4. Creating qmake...
  5. make: Nothing to be done for 'first'.
  6. Command line: -v -prefix /opt/qt5.11.0-armhf -opensource -confirm-license -release -xplatform linux-arm-gnueabihf-g++ -make libs -qt-libjpeg -qt-libpng -qt-zlib -skip qtpurchasing -nomake examples -nomake tests -make tools
  7. Project ERROR: Qmake spec does not set MAKEFILE_GENERATOR.
复制代码





回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

公告
可以关注我们的微信公众号yafeilinux_friends获取最新动态,或者加入QQ会员群进行交流:190741849、186601429(已满) 我知道了