Hello,
I want to configure QT Creator for Cross Compiling to execute GUI-Application. On my host machine I use Ubuntu 14.04 LTS (32-Bit) as operation system. For the installation of the SDK I followed the given Links:
For the compilation I execute the following commands:
bitbake -k meta-toolchain-qt5
bitbake -k angstrom-lxde-image
after the succeed compilation I install the SDK with:
../deploy/sdk/angstrom-glibc-x86_64-armv7at2hf-neon-v2016.12-toolchain.sh -S
The qmake command could succeed.
Now I install the given packages and the QT Creator.
Befor I open the QT Creator over the command line, I execute:
. /usr/local/oecore-x86_64/environment-setup-armv7at2hf-neon-angstrom-linux-gnueabi
echo $OE_QMAKE_CXX
The system answer was :
arm-angstrom-linux-gnueabi-g++ -march=armv7-a -mthumb -mfpu=neon -mfloat-abi=hard --sysroot=/usr/local/oecore-x86_64/sysroots/armv7at2hf-neon-angstrom-linux-gnueabi
Now I configurate the different components of the IDE successfully. Only the Device installation failed with the following error.
SSH connection failure: SSH Protocol error: Server and client capabilities don’t match. Client list was: aes128-cbc,3des-cbc.
Server list was chacha20-poly1305@openssh.com,aes128-ctr,aes192-ctr,aes256-ctr,aes128-gcm@openssh.com,aes256-gcm@openssh.com.
To test the installation I create a QT Widget Application, with only a text label in the UI inserted. The compilation failed. The top of the compilation output is given in the following section.
/usr/local/oecore-i686/sysroots/i686-angstromsdk-linux/usr/bin/qt5/uic ../testApalaris1/mainwindow.ui -o ui_mainwindow.h
g++ -c -pipe -g -Wall -W -D_REENTRANT -fPIC -DQT_QML_DEBUG -DQT_DECLARATIVE_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I../testApalaris1 -I. -I/usr/local/oecore-i686/sysroots/armv7at2hf-neon-angstrom-linux-gnueabi/usr/include/qt5 -I/usr/local/oecore-i686/sysroots/armv7at2hf-neon-angstrom-linux-gnueabi/usr/include/qt5/QtWidgets -I/usr/local/oecore-i686/sysroots/armv7at2hf-neon-angstrom-linux-gnueabi/usr/include/qt5/QtGui -I/usr/local/oecore-i686/sysroots/armv7at2hf-neon-angstrom-linux-gnueabi/usr/include/qt5/QtCore -I. -I. -I/usr/local/oecore-i686/sysroots/armv7at2hf-neon-angstrom-linux-gnueabi/usr/lib/qt5/mkspecs/linux-g++ -o main.o ../testApalaris1/main.cpp
In file included from /usr/local/oecore-i686/sysroots/armv7at2hf-neon-angstrom-linux-gnueabi/usr/include/qt5/QtCore/qglobal.h:83:0,
from /usr/local/oecore-i686/sysroots/armv7at2hf-neon-angstrom-linux-gnueabi/usr/include/qt5/QtGui/qwindowdefs.h:43,
from /usr/local/oecore-i686/sysroots/armv7at2hf-neon-angstrom-linux-gnueabi/usr/include/qt5/QtWidgets/qwidget.h:43,
from /usr/local/oecore-i686/sysroots/armv7at2hf-neon-angstrom-linux-gnueabi/usr/include/qt5/QtWidgets/qmainwindow.h:43,
from /usr/local/oecore-i686/sysroots/armv7at2hf-neon-angstrom-linux-gnueabi/usr/include/qt5/QtWidgets/QMainWindow:1,
from ../testApalaris1/mainwindow.h:4,
from ../testApalaris1/main.cpp:1:
/usr/local/oecore-i686/sysroots/armv7at2hf-neon-angstrom-linux-gnueabi/usr/include/qt5/QtCore/qcompilerdetection.h:562:6: error: #error Qt requires a C++11 compiler and yours does not seem to be that.
# error Qt requires a C++11 compiler and yours does not seem to be that.
^
In file included from /usr/local/oecore-i686/sysroots/armv7at2hf-neon-angstrom-linux-gnueabi/usr/include/qt5/QtCore/qatomic.h:46:0,
from /usr/local/oecore-i686/sysroots/armv7at2hf-neon-angstrom-linux-gnueabi/usr/include/qt5/QtCore/qglobal.h:1145,
from /usr/local/oecore-i686/sysroots/armv7at2hf-neon-angstrom-linux-gnueabi/usr/include/qt5/QtGui/qwindowdefs.h:43,
from /usr/local/oecore-i686/sysroots/armv7at2hf-neon-angstrom-linux-gnueabi/usr/include/qt5/QtWidgets/qwidget.h:43,
from /usr/local/oecore-i686/sysroots/armv7at2hf-neon-angstrom-linux-gnueabi/usr/include/qt5/QtWidgets/qmainwindow.h:43,
from /usr/local/oecore-i686/sysroots/armv7at2hf-neon-angstrom-linux-gnueabi/usr/include/qt5/QtWidgets/QMainWindow:1,
from ../testApalaris1/mainwindow.h:4,
from ../testApalaris1/main.cpp:1:
/usr/local/oecore-i686/sysroots/armv7at2hf-neon-angstrom-linux-gnueabi/usr/include/qt5/QtCore/qbasicatomic.h:61:4: error: #error "Qt requires C++11 support"
# error "Qt requires C++11 support"
^
In file included from /usr/local/oecore-i686/sysroots/armv7at2hf-neon-angstrom-linux-gnueabi/usr/include/qt5/QtCore/qobjectdefs.h:50:0,
from /usr/local/oecore-i686/sysroots/armv7at2hf-neon-angstrom-linux-gnueabi/usr/include/qt5/QtGui/qwindowdefs.h:44,
from /usr/local/oecore-i686/sysroots/armv7at2hf-neon-angstrom-linux-gnueabi/usr/include/qt5/QtWidgets/qwidget.h:43,
from /usr/local/oecore-i686/sysroots/armv7at2hf-neon-angstrom-linux-gnueabi/usr/include/qt5/QtWidgets/qmainwindow.h:43,
from /usr/local/oecore-i686/sysroots/armv7at2hf-neon-angstrom-linux-gnueabi/usr/include/qt5/QtWidgets/QMainWindow:1,
from ../testApalaris1/mainwindow.h:4,
from ../testApalaris1/main.cpp:1:
/usr/local/oecore-i686/sysroots/armv7at2hf-neon-angstrom-linux-gnueabi/usr/include/qt5/QtCore/qobjectdefs_impl.h:241:9: warning: identifier 'decltype' is a keyword in C++11 [-Wc++0x-compat]
template <typename F> static auto test(F f) -> decltype(((f.operator()((dummy<ArgList>())...)), int()));
For a second test I create a console application for C++ without any QT sources. This compilation succeed but, is not executable on the target machine rather one host machine. so I guess QT use the wrong compiler.
At least I insert the top of the makefile, for the inserted compilation errors.
#############################################################################
# Makefile for building: testApalaris1
# Generated by qmake (3.0) (Qt 5.7.1)
# Project: ../testApalaris1/testApalaris1.pro
# Template: app
# Command: /usr/local/oecore-i686/sysroots/i686-angstromsdk-linux/usr/bin/qt5/qmake -spec linux-g++ CONFIG+=debug CONFIG+=declarative_debug CONFIG+=qml_debug -o Makefile ../testApalaris1/testApalaris1.pro
#############################################################################
MAKEFILE = Makefile
####### Compiler, tools and options
CC = gcc
CXX = g++
DEFINES = -DQT_QML_DEBUG -DQT_DECLARATIVE_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB
CFLAGS = -pipe -g -Wall -W -D_REENTRANT -fPIC $(DEFINES)
CXXFLAGS = -pipe -g -Wall -W -D_REENTRANT -fPIC $(DEFINES)
INCPATH = -I../testApalaris1 -I. -I/usr/local/oecore-i686/sysroots/armv7at2hf-neon-angstrom-linux-gnueabi/usr/include/qt5 -I/usr/local/oecore-i686/sysroots/armv7at2hf-neon-angstrom-linux-gnueabi/usr/include/qt5/QtWidgets -I/usr/local/oecore-i686/sysroots/armv7at2hf-neon-angstrom-linux-gnueabi/usr/include/qt5/QtGui -I/usr/local/oecore-i686/sysroots/armv7at2hf-neon-angstrom-linux-gnueabi/usr/include/qt5/QtCore -I. -I. -I/usr/local/oecore-i686/sysroots/armv7at2hf-neon-angstrom-linux-gnueabi/usr/lib/qt5/mkspecs/linux-g++
QMAKE = /usr/local/oecore-i686/sysroots/i686-angstromsdk-linux/usr/bin/qt5/qmake
DEL_FILE = rm -f
CHK_DIR_EXISTS= test -d
MKDIR = mkdir -p
COPY = cp -f
COPY_FILE = cp -f
COPY_DIR = cp -f -R
INSTALL_FILE = install -m 644 -p
INSTALL_PROGRAM = install -m 755 -p
INSTALL_DIR = cp -f -R
DEL_FILE = rm -f
SYMLINK = ln -f -s
DEL_DIR = rmdir
MOVE = mv -f
TAR = tar -cf
COMPRESS = gzip -9f
DISTNAME = testApalaris11.0.0
DISTDIR = /home/adminuser/WorkspaceQT/test1/build-testApalaris1-ApalarisTK1-Debug/.tmp/testApalaris11.0.0
LINK = g++
LFLAGS =
LIBS = $(SUBLIBS) -L/usr/local/oecore-i686/sysroots/armv7at2hf-neon-angstrom-linux-gnueabi/usr/lib -lQt5Widgets -L/home/adminuser/OpenEmbedded/oe-core/build/tmp-glibc/sysroots/apalis-tk1/usr/lib/arm-linux-gnueabihf/tegra -lQt5Gui -lQt5Core -lGL -lpthread
AR = ar cqs
RANLIB =
SED = sed
STRIP = strip
####### Output directory
OBJECTS_DIR = ./
####### Files
SOURCES = ../testApalaris1/main.cpp \
../testApalaris1/mainwindow.cpp moc_mainwindow.cpp
OBJECTS = main.o \
mainwindow.o \
moc_mainwindow.o
DIST = /usr/local/oecore-i686/sysroots/armv7at2hf-neon-angstrom-linux-gnueabi/usr/lib/qt5/mkspecs/features/spec_pre.prf \
/usr/local/oecore-i686/sysroots/armv7at2hf-neon-angstrom-linux-gnueabi/usr/lib/qt5/mkspecs/common/unix.conf \
/usr/local/oecore-i686/sysroots/armv7at2hf-neon-angstrom-linux-gnueabi/usr/lib/qt5/mkspecs/common/linux.conf \
/usr/local/oecore-i686/sysroots/armv7at2hf-neon-angstrom-linux-gnueabi/usr/lib/qt5/mkspecs/common/sanitize.conf \
/usr/local/oecore-i686/sysroots/armv7at2hf-neon-angstrom-linux-gnueabi/usr/lib/qt5/mkspecs/common/gcc-base.conf \
Do you now any reasons the fix the problem or can I do anything to bypass the problem?
Thanks.