Reputation: 431
I am trying to compile Qt5 from source using the qt-everywhere-opensource-src-5.9.6.tar.xz
file. I extract the file, and create the following 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)
Next, I go inside the extracted qt folder and call ./configure
with the following parameters:
./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
It runs for a while then throws me this error:
Info: creating super cache file /{homedir}/qt-everywhere-opensource-src-5.9.6/.qmake.super
ERROR: Invalid command line parameter 'arm'.
Is this because of the -embedded arm
option? I see many pages using it so I am not sure why I am getting this error. Please help.
Upvotes: 1
Views: 670
Reputation: 333
You are probably seeing examples of how to cross-compile Qt4. Qt4 had the "-embedded arm" option, but Qt5 does not.
Upvotes: 2