Ошибка при настройке Qt5 для компиляции из источника - PullRequest
0 голосов
/ 08 сентября 2018

Я пытаюсь скомпилировать Qt5 из исходного кода, используя файл qt-everywhere-opensource-src-5.9.6.tar.xz.Я извлекаю файл и создаю следующее qmake.conf:

#
# qmake configuration for building with arm-linux-gnueabi-g++
#

MAKEFILE_GENERATOR      = UNIX
TARGET_PLATFORM         = unix
TEMPLATE                = app
CONFIG                  += qt warn_on release incremental link_prl gdb_dwarf_index
QT                      += core gui
QMAKE_INCREMENTAL_STYLE = sublib

include(../common/linux.conf)
include(../common/gcc-base-unix.conf)
include(../common/g++-unix.conf)
include(../../common/qws.conf)

# Compiler Flags to take advantage of the ARM architecture
QMAKE_CFLAGS_RELEASE = -O3 -march=armv7-a -mtune=cortex-a8 -mfpu=neon -mfloat-abi=hard
QMAKE_CXXFLAGS_RELEASE = -O3 -march=armv7-a -mtune=cortex-a8 -mfpu=neon -mfloat-abi=hard

# modifications to g++.conf
QMAKE_CC                = /{homedir}/gcc-linaro-7.3.1-2018.05-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf-gcc
QMAKE_CXX               = /{homedir}/gcc-linaro-7.3.1-2018.05-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf-g++
QMAKE_LINK              = /{homedir}/gcc-linaro-7.3.1-2018.05-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf-g++
QMAKE_LINK_SHLIB        = /{homedir}/gcc-linaro-7.3.1-2018.05-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf-g++

# modifications to linux.conf
QMAKE_AR                = /{homedir}/gcc-linaro-7.3.1-2018.05-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabi-ar cqs
QMAKE_OBJCOPY           = /{homedir}/gcc-linaro-7.3.1-2018.05-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabi-objcopy
QMAKE_STRIP             = /{homedir}/gcc-linaro-7.3.1-2018.05-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabi-strip

load(qt_config)

Затем я захожу в извлеченную папку qt и вызываю ./configure со следующими параметрами:

./configure -v -opensource -confirm-license -prefix /{homedir}/qt-everywhere-opensource-src-5.9.6 -xplatform linux-arm-gnueabihf-g++ -embedded arm -little-endian -host-little-endian -no-qt3support -nomake demos -nomake examples -qt-gfx-linuxfb -qt-gfx-qvfb -qt-gfx-vnc -no-accessibility

Он работает некоторое время, а затем выдает мне эту ошибку:

Info: creating super cache file /{homedir}/qt-everywhere-opensource-src-5.9.6/.qmake.super
ERROR: Invalid command line parameter 'arm'.

Это из-за опции -embedded arm?Я вижу много страниц, использующих его, поэтому я не уверен, почему я получаю эту ошибку.Пожалуйста, помогите.

1 Ответ

0 голосов
/ 08 сентября 2018

Вы, вероятно, видите примеры того, как кросс-компилировать Qt4. У Qt4 была опция «-включенная рука», но у Qt5 нет.

...