Hi,
I am working on a sbc6000x board (at91sam9261 micro and linux 2.6.24) and i am trying to crosscompile application for this board from my pc (ubuntu 14.14).
When i try to run the application (after copying it in /bin and chmod 755 it) i have an error "applet not found". The applicaion is a qt widget application, a push button with a msgbox.
To help understand this error i will explain what i did to have this application.
I am using :
qt-everywhere-opensource-src-4.8.5 ou autre source
gcc-linaro-arm-linux-gnueabihf-4.8-2013.10_linux
tslib-1.0 (because i need to use the touch screen and when trying to configure qt with -qt-mouse-tslib i need the lib and inclue of tslib).
Configuration and installation of tslib
cd /home/spi/installQt/tslib-1.0/tslib-1.0/
chmod a+x autogen.sh
./autogen.sh
./configure CC=/home/spi/installQt/gcc-linaro-arm-linux-gnueabihf-4.8-2013.10_linux/bin/arm-linux-gnueabihf-gcc CXX=/home/spi/installQt/gcc-linaro-arm-linux-gnueabihf-4.8-2013.10_linux/bin/arm-linux-gnueabihf-g++ --prefix=/home/spi/installQt/tslib-arm --host=arm-linux-gnueabihf --enable-shared=yes --enable-static=yes
cd /home/spi/installQt/tslib-1.0/tslib-1.0/
chmod a+x autogen.sh
./autogen.sh
./configure CC=/home/spi/installQt/gcc-linaro-arm-linux-gnueabihf-4.8-2013.10_linux/bin/arm-linux-gnueabihf-gcc CXX=/home/spi/installQt/gcc-linaro-arm-linux-gnueabihf-4.8-2013.10_linux/bin/arm-linux-gnueabihf-g++ --prefix=/home/spi/installQt/tslib-arm --host=arm-linux-gnueabihf --enable-shared=yes --enable-static=yes
To copy to clipboard, switch view to plain text mode
I comment the line #define malloc rpl_malloc in the file config.h or i will have an error in the make
make
make install
make
make install
To copy to clipboard, switch view to plain text mode
No error at this point.
Configuration and installation fo QTembedded
First i modify the qmake.conf file to respect the path of my compiler and to put the include/lib of tslib :
#
# qmake configuration for building with arm-none-linux-gnueabi-g++
#
include(../../common/linux.conf)
include(../../common/gcc-base-unix.conf)
include(../../common/g++-unix.conf)
include(../../common/qws.conf)
# modifications to g++.conf
QMAKE_CC = /home/spi/installQt/gcc-linaro-arm-linux-gnueabihf-4.8-2013.10_linux/bin/arm-linux-gnueabihf-gcc
QMAKE_CXX = /home/spi/installQt/gcc-linaro-arm-linux-gnueabihf-4.8-2013.10_linux/bin/arm-linux-gnueabihf-g++
QMAKE_LINK = /home/spi/installQt/gcc-linaro-arm-linux-gnueabihf-4.8-2013.10_linux/bin/arm-linux-gnueabihf-g++
QMAKE_LINK_SHLIB = /home/spi/installQt/gcc-linaro-arm-linux-gnueabihf-4.8-2013.10_linux/bin/arm-linux-gnueabihf-g++
# modifications to linux.conf
QMAKE_AR = /home/spi/installQt/gcc-linaro-arm-linux-gnueabihf-4.8-2013.10_linux/bin/arm-linux-gnueabihf-ar cqs
QMAKE_OBJCOPY = /home/spi/installQt/gcc-linaro-arm-linux-gnueabihf-4.8-2013.10_linux/bin/arm-linux-gnueabihf-objcopy
QMAKE_STRIP = /home/spi/installQt/gcc-linaro-arm-linux-gnueabihf-4.8-2013.10_linux/bin/arm-linux-gnueabihf-strip
QMAKE_INCDIR += /home/spi/installQt/tslib-arm/include
QMAKE_LIBDIR += /home/spi/installQt/tslib-arm/lib
load(qt_config)
#
# qmake configuration for building with arm-none-linux-gnueabi-g++
#
include(../../common/linux.conf)
include(../../common/gcc-base-unix.conf)
include(../../common/g++-unix.conf)
include(../../common/qws.conf)
# modifications to g++.conf
QMAKE_CC = /home/spi/installQt/gcc-linaro-arm-linux-gnueabihf-4.8-2013.10_linux/bin/arm-linux-gnueabihf-gcc
QMAKE_CXX = /home/spi/installQt/gcc-linaro-arm-linux-gnueabihf-4.8-2013.10_linux/bin/arm-linux-gnueabihf-g++
QMAKE_LINK = /home/spi/installQt/gcc-linaro-arm-linux-gnueabihf-4.8-2013.10_linux/bin/arm-linux-gnueabihf-g++
QMAKE_LINK_SHLIB = /home/spi/installQt/gcc-linaro-arm-linux-gnueabihf-4.8-2013.10_linux/bin/arm-linux-gnueabihf-g++
# modifications to linux.conf
QMAKE_AR = /home/spi/installQt/gcc-linaro-arm-linux-gnueabihf-4.8-2013.10_linux/bin/arm-linux-gnueabihf-ar cqs
QMAKE_OBJCOPY = /home/spi/installQt/gcc-linaro-arm-linux-gnueabihf-4.8-2013.10_linux/bin/arm-linux-gnueabihf-objcopy
QMAKE_STRIP = /home/spi/installQt/gcc-linaro-arm-linux-gnueabihf-4.8-2013.10_linux/bin/arm-linux-gnueabihf-strip
QMAKE_INCDIR += /home/spi/installQt/tslib-arm/include
QMAKE_LIBDIR += /home/spi/installQt/tslib-arm/lib
load(qt_config)
To copy to clipboard, switch view to plain text mode
Then i configure QT :
cd /home/spi/installQt/qt-everywhere-opensource-src-4.8.5/
./configure -opensource -confirm-license -prefix /usr/local/Qt-4.8.5-arm-linux -embedded arm -little-endian -no-pch -xplatform qws/linux-arm-gnueabi-g++ -qt-mouse-tslib -no-webkit -no-qt3support -no-cups -no-largefile -optimized-qmake -no-openssl -nomake tools -static
cd /home/spi/installQt/qt-everywhere-opensource-src-4.8.5/
./configure -opensource -confirm-license -prefix /usr/local/Qt-4.8.5-arm-linux -embedded arm -little-endian -no-pch -xplatform qws/linux-arm-gnueabi-g++ -qt-mouse-tslib -no-webkit -no-qt3support -no-cups -no-largefile -optimized-qmake -no-openssl -nomake tools -static
To copy to clipboard, switch view to plain text mode
I use -qt-mouse-tslib because i want to use the touch screen and i use -static because i read that (even if the application would be heavier and less "flexible) i would only have to transfert and executable and not "care" about libraries or other dependencies.
make
sudo make install
make
sudo make install
To copy to clipboard, switch view to plain text mode
Still no error.
Configuration in QT creator
I create a kit with the qmake and the compiler which are in the paths :
/usr/local/Qt-4.8.5-arm-linux/bin/
/usr/local/Qt-4.8.5-arm-linux/bin/
To copy to clipboard, switch view to plain text mode
and
/home/spi/installQt/gcc-linaro-arm-linux-gnueabihf-4.8-2013.10_linux/bin/arm-linux-gnueabihf-g++
/home/spi/installQt/gcc-linaro-arm-linux-gnueabihf-4.8-2013.10_linux/bin/arm-linux-gnueabihf-g++
To copy to clipboard, switch view to plain text mode
In my project i add this argument to the make :
ARCH=arm CROSS_COMPILE=/home/spi/installQt/gcc-linaro-arm-linux-gnueabihf-4.8-2013.10_linux/bin/arm-linux-gnueabihf-
ARCH=arm CROSS_COMPILE=/home/spi/installQt/gcc-linaro-arm-linux-gnueabihf-4.8-2013.10_linux/bin/arm-linux-gnueabihf-
To copy to clipboard, switch view to plain text mode
On the target i add this to the environment :
export QWS_MOUSE_PROTO=tslib:/usr/input/ts
export QWS_DISPLAY=LinuxFB:mmWidth=480:mmHeight=272
export QWS_MOUSE_PROTO=tslib:/usr/input/ts
export QWS_DISPLAY=LinuxFB:mmWidth=480:mmHeight=272
To copy to clipboard, switch view to plain text mode
I feel i must not be far from having something running but i am now stuck on this.
Thank you for your future answers or advices !
EDIT 1 : After some research i added "CONFIG += static" to my .pro file. It changed nothing.
Bookmarks