There are too few information available on how to easily setup QT environment for building Beaglebone applications (command line or GUI). In this tutorial we will compile QT and setup the environment from scratch.
Host: Ubuntu 13.10 64bit (VB)
Target: BeagleBone Black running Angstrom
QT: 4.8.5
Download :
angstrom-2011.03-x86_64-linux-armv7a-linux-gnueabi-toolchain-qte-4.6.3.tar.bz2 for 64bit host or
angstrom-2011.03-i686-linux-armv7a-linux-gnueabi-toolchain-qte-4.6.3.tar.bz2 for x86 (or download more recent version at
Run
$> tar -C / -xjf angstrom-2011.03-i686-linux-armv7a-linux-gnueabi-toolchain-qte-4.6.3.tar.bz2
> tar -xzf qt-everywhere-opensource-src-4.8.5.tar.gz
> mv qt-everywhere-opensource-src-4.8.5 qt-4.8.5-beagle
> cd qt-4.8.5-beagle
> mkdir ./mkspecs/qws/linux-am335x-g++
> cp ./mkspecs/qws/linux-arm-g++/qplatformdefs.h ./mkspecs/qws/linux-am335x-g++
> touch ./mkspecs/qws/linux-am335x-g++/qmake.conf
Add the following to qmake.conf with your favorite editor:
#
# qmake configuration for building with arm-linux-g++
#
include(../../common/linux.conf)
include(../../common/gcc-base-unix.conf)
include(../../common/g++-unix.conf)
include(../../common/qws.conf)
# modifications to g++.conf
#Toolchain
#Compiler Flags to take advantage of the ARM architecture
QMAKE_CFLAGS_RELEASE = -O3 -march=armv7-a -mtune=cortex-a8 -mfpu=neon -mfloat-abi=softfp
QMAKE_CXXFLAGS_RELEASE = -O3 -march=armv7-a -mtune=cortex-a8 -mfpu=neon -mfloat-abi=softfp
QMAKE_CC = /usr/local/angstrom/arm/arm-angstrom-linux-gnueabi/bin/gcc
QMAKE_CXX = /usr/local/angstrom/arm/arm-angstrom-linux-gnueabi/bin/g++
QMAKE_LINK = /usr/local/angstrom/arm/arm-angstrom-linux-gnueabi/bin/g++
QMAKE_LINK_SHLIB = /usr/local/angstrom/arm/arm-angstrom-linux-gnueabi/bin/g++
# modifications to linux.conf
QMAKE_AR = /usr/local/angstrom/arm/arm-angstrom-linux-gnueabi/bin/ar cqs
QMAKE_OBJCOPY = /usr/local/angstrom/arm/arm-angstrom-linux-gnueabi/bin/objcopy
QMAKE_STRIP = /usr/local/angstrom/arm/arm-angstrom-linux-gnueabi/bin/strip
load(qt_config)
./configure -v -opensource -confirm-license -prefix /opt/qt -embedded arm -platform qws/linux-x86-g++ -xplatform qws/linux-am335x-g++ -depths 16,24,32 -no-mmx -no-3dnow -no-sse -no-sse2 -no-glib -no-cups -no-largefile -no-accessibility -no-openssl -no-gtkstyle -qt-mouse-pc -qt-mouse-linuxtp -qt-mouse-linuxinput -plugin-mouse-linuxtp -plugin-mouse-pc -fast -little-endian -host-big-endian -no-pch -no-sql-ibase -no-sql-mysql -no-sql-odbc -no-sql-psql -no-sql-sqlite -no-sql-sqlite2 -no-webkit -no-qt3support -nomake examples -nomake demos -nomake docs -nomake translations -qt-mouse-tslib
> make -j 4
> sudo make install
Make sure you beaglebone is connected to your host (assume ip =192.168.7.2 USB)
ssh to your beaglebone (ssh ro...@192.168.7.2)
Create dir structure from your prefix:
> root@beaglebone:/# mkdir /opt
> root@beaglebone:/# mkdir /opt/qt
> opkg install tslib-calibrate
> ts-all
> ts-calibrate (calibrate all points)
> update-rc.d -f gdm remove
> systemctl disable gdm.service
> reboot
Copy lib from your host to beagle (after reboot):
> scp -r /opt/qt/lib ro...@192.168.7.2:"/opt/qt"
Add the lib directory to path by editing /etc/profile and adding:
PATH="...:/opt/qt/lib"
NS run applications preceding with
export QWS_MOUSE_PROTO=LinuxInput:/dev/input/eventx
Note x could be 0 or 1 depending on your setup
AND
./xxxxx -qws where xxxx is your application
I suggest installing QT Creator using regular installer:
Download
qt-creator-linux-x86-opensource-2.8.0.run for x86 or
qt-creator-linux-x86_64-opensource-2.8.0.run for 64bit
> chmod +x qt-creator-linux-x86_64-opensource-2.8.0.run /qt-creator-linux-x86_64-opensource-2.8.0.run
Follow installation Wizard
Run Angstrom toolchain environment setup:
> . /usr/local/angstrom/arm/environment-setup
Test with > qmake2 and see if it response without error(not existing)
Open Qt Creator and
Configure Qt version
1. Go to Tools->Options->Build & Run->Qt Versions and click Add
2. Select qmake.conf from /opt/qt/bin
3. Click Ok
Configure target device connection
1. Go to Tools->Options->Devices
2. Click Add and select Generic Linux Device
3. Add IP 192.168.7.2, User: root
4. Set name to “Beaglebone”
5. Click Ok
Configure Compiler
1. Go to Tools->Options->Build & Run->Compilers and click Add->GCC
2. Select compiler path: /usr/local/angstrom/arm/bin/arm-angstrom-linux-gnueabi-g++
3.Click Ok
Configure Kit
1. Go to Tools->Options->Build & Run->Kits and click Add
2. Call new kit Beaglebone
3. Select device type: “Generic Linux Device”
4. Select the device you previously created
5. Select compiler you created
6. Select Qt version you created
Select GDK path as /usr/local/angstrom/arm/bin/arm-angstrom-linux-gnueabi-gdk
1. Click Ok (not found !! )
Configure GDB
1 Goto Tools > Options > Build & Run,
2. set Debugger > Edit to /usr/local/angstrom/arm/bin/arm-angstrom-linux-gnueabi-gdb
Create new project (File->New project->Qt Project->Qt Console application)
Edit your project (.pro) file
Add the following after “TARGET=…” line:
target.files = <YOUR EXECUTABLE NAME>
target.path = /home/root
INSTALLS = target
Go to Projects -> Run, you should see on “Files to deploy” table your “target” settings
Now you are ready to build and deploy you project on your target board
The following example application should print Hello world inside your console:
#include <QCoreApplication>
#include <iostream>
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
std::cout << "hello world" << std::endl;
return a.exec();
}
Hello List;
I got as far as Step 5 when I got this error.
I am using exactly the same host config as the author:
beaglebone@ubuntu:~/qt-4.8.5-beagle$ ./configure -v -opensource -confirm-license -prefix /opt/qt -embedded arm -platform qws/linux-x86-g++ -xplatform qws/linux-am335x-g++ -depths 16,24,32 -no-mmx -no-3dnow -no-sse -no-sse2 -no-glib -no-cups -no-largefile -no-accessibility -no-openssl -no-gtkstyle -qt-mouse-pc -qt-mouse-linuxtp -qt-mouse-linuxinput -plugin-mouse-linuxtp -plugin-mouse-pc -fast -little-endian -host-big-endian -no-pch -no-sql-ibase -no-sql-mysql -no-sql-odbc -no-sql-psql -no-sql-sqlite -no-sql-sqlite2 -no-webkit -no-qt3support -nomake examples -nomake demos -nomake docs -nomake translations -qt-mouse-tslib
Determining system architecture... (Linux:3.11.0-12-generic:x86_64)
64-bit AMD 80x86 (x86_64)
'arm' is supported
'x86_64' is supported
System architecture: 'arm'
Host architecture: 'x86_64'
ERROR: Cannot set the compiler for the configuration tests
beaglebone@ubuntu:~/qt-4.8.5-beagle$ ^C
Anyone have any ideas or suggestions ?
http://www.packtpub.com/building-a-home-security-system-with-beaglebone/book
--
For more options, visit http://beagleboard.org/discuss
---
You received this message because you are subscribed to the Google Groups "BeagleBoard" group.
To unsubscribe from this group and stop receiving emails from it, send an email to beagleboard...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.
No virus found in this message.
Checked by AVG - www.avg.com
Version: 2014.0.4259 / Virus Database: 3658/6991 - Release Date: 01/10/14
(...) even if I’ve follow all the steps the file on the target seems to miss libs : “-bash: ./TestQtapp: No such file or directory”
ldd gives “not a dynamic executable” while prints :
“ELF 32-bit LSB executable, ARM, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.16, not stripped”
Even I’ve installed Qt 5.1 I’ve checked that the app was created with the compiled 4.8.5 as said here.
You received this message because you are subscribed to a topic in the Google Groups "BeagleBoard" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/beagleboard/mb1R6NF5RH4/unsubscribe.
To unsubscribe from this group and all its topics, send an email to beagleboard...@googlegroups.com.
I am working on this problem too.
I managed to “./configure” Ok.
Qt is now configured for building. Just run 'make'.
Once everything is built, you must run 'make install'.
Qt will be installed into /opt/qt
To reconfigure, run 'make confclean' and 'configure'.
beaglebone@ubuntu:~/qt-4.8.5-beagle$
But when I try to “make” I get the following error:
cd src/corelib/ && make -f Makefile
make[1]: Entering directory `/home/beaglebone/qt-4.8.5-beagle/src/corelib'
/usr/local/angstrom/arm/arm-angstrom-linux-gnueabi/bin/g++ -c -pipe -fno-exceptions -O3 -march=armv7-a -mtune=cortex-a8 -mfpu=neon -mfloat-abi=softfp -Wall -W -D_REENTRANT -fPIC -DQT_SHARED -DQT_BUILD_CORE_LIB -DQT_NO_USING_NAMESPACE -DQT_NO_CAST_TO_ASCII -DQT_ASCII_CAST_WARNINGS -DQT_MOC_COMPAT -DQT_USE_QSTRINGBUILDER -DELF_INTERPRETER=\"/lib64/ld-linux-x86-64.so.2\" -DHB_EXPORT=Q_CORE_EXPORT -DQT_NO_DEBUG -I../../mkspecs/qws/linux-am335x-g++ -I. -I../../include -I../../include/QtCore -I.rcc/release-shared-emb-arm -Iglobal -I../3rdparty/zlib -I../3rdparty/harfbuzz/src -I../3rdparty/md5 -I../3rdparty/md4 -I.moc/release-shared-emb-arm -o .obj/release-shared-emb-arm/qabstractanimation.o animation/qabstractanimation.cpp
make[1]: /usr/local/angstrom/arm/arm-angstrom-linux-gnueabi/bin/g++: Command not found
make[1]: *** [.obj/release-shared-emb-arm/qabstractanimation.o] Error 127
make[1]: Leaving directory `/home/beaglebone/qt-4.8.5-beagle/src/corelib'
make: *** [sub-corelib-make_default-ordered] Error 2
http://www.packtpub.com/building-a-home-security-system-with-beaglebone/book
You received this message because you are subscribed to the Google Groups "BeagleBoard" group.
To unsubscribe from this group and stop receiving emails from it, send an email to beagleboard...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.
No virus found in this message.
Checked by AVG - www.avg.com
Version: 2014.0.4259 / Virus Database: 3658/6998 - Release Date: 01/13/14
No virus found in this message.
Checked by AVG - www.avg.com
Version: 2014.0.4259 / Virus Database: 3658/6910 - Release Date: 12/11/13
Internal Virus Database is out of date.
I am working on this problem too.
I managed to “./configure” Ok.
Qt is now configured for building. Just run 'make'.
Once everything is built, you must run 'make install'.
Qt will be installed into /opt/qt
To reconfigure, run 'make confclean' and 'configure'.
beaglebone@ubuntu:~/qt-4.8.5-beagle$
But when I try to “make” I get the following error:
cd src/corelib/ && make -f Makefile
make[1]: Entering directory `/home/beaglebone/qt-4.8.5-beagle/src/corelib'
/usr/local/angstrom/arm/arm-angstrom-linux-gnueabi/bin/g++ -c -pipe -fno-exceptions -O3 -march=armv7-a -mtune=cortex-a8 -mfpu=neon -mfloat-abi=softfp -Wall -W -D_REENTRANT -fPIC -DQT_SHARED -DQT_BUILD_CORE_LIB -DQT_NO_USING_NAMESPACE -DQT_NO_CAST_TO_ASCII -DQT_ASCII_CAST_WARNINGS -DQT_MOC_COMPAT -DQT_USE_QSTRINGBUILDER -DELF_INTERPRETER=\"/lib64/ld-linux-x86-64.so.2\" -DHB_EXPORT=Q_CORE_EXPORT -DQT_NO_DEBUG -I../../mkspecs/qws/linux-am335x-g++ -I. -I../../include -I../../include/QtCore -I.rcc/release-shared-emb-arm -Iglobal -I../3rdparty/zlib -I../3rdparty/harfbuzz/src -I../3rdparty/md5 -I../3rdparty/md4 -I.moc/release-shared-emb-arm -o .obj/release-shared-emb-arm/qabstractanimation.o animation/qabstractanimation.cpp
make[1]: /usr/local/angstrom/arm/arm-angstrom-linux-gnueabi/bin/g++: Command not found
make[1]: *** [.obj/release-shared-emb-arm/qabstractanimation.o] Error 127
make[1]: Leaving directory `/home/beaglebone/qt-4.8.5-beagle/src/corelib'
make: *** [sub-corelib-make_default-ordered] Error 2
Hi William,
If you run the following command, what do you get:
/usr/local/angstrom/arm/arm-angstrom-linux-gnueabi/bin/g++ —version
From the above error, g++ is missing.
Regards,
John
Hi John:
When I cut and paste you command into the terminal I get:
beaglebone@ubuntu:~$ /usr/local/angstrom/arm/arm-angstrom-linux-gnueabi/bin/g++ —version
bash: /usr/local/angstrom/arm/arm-angstrom-linux-gnueabi/bin/g++: No such file or directory
If I simply enter:
beaglebone@ubuntu:~$ g++ -version
I get:
g++: error: unrecognized command line option ‘-version’
g++: fatal error: no input files
compilation terminated.
However, when I got to: /usr/local/angstrom/arm/arm-angstrom-linux-gnueabi/bin
I see the following:
beaglebone@ubuntu:/usr/local/angstrom/arm/arm-angstrom-linux-gnueabi/bin$ ls -l
total 172
lrwxrwxrwx 1 root root 46 Mar 18 2011 addr2line -> ../../bin/arm-angstrom-linux-gnueabi-addr2line
lrwxrwxrwx 1 root root 39 Mar 18 2011 ar -> ../../bin/arm-angstrom-linux-gnueabi-ar
lrwxrwxrwx 1 root root 39 Mar 18 2011 as -> ../../bin/arm-angstrom-linux-gnueabi-as
lrwxrwxrwx 1 root root 40 Mar 18 2011 cc -> ../../bin/arm-angstrom-linux-gnueabi-gcc
lrwxrwxrwx 1 root root 44 Mar 18 2011 c++filt -> ../../bin/arm-angstrom-linux-gnueabi-c++filt
lrwxrwxrwx 1 root root 40 Mar 18 2011 cpp -> ../../bin/arm-angstrom-linux-gnueabi-cpp
-rwxr-xr-x 1 root root 4328 Mar 16 2011 dmesg.util-linux-ng
lrwxrwxrwx 1 root root 40 Mar 18 2011 g++ -> ../../bin/arm-angstrom-linux-gnueabi-g++
lrwxrwxrwx 1 root root 40 Mar 18 2011 gcc -> ../../bin/arm-angstrom-linux-gnueabi-gcc
lrwxrwxrwx 1 root root 43 Mar 18 2011 gccbug -> ../../bin/arm-angstrom-linux-gnueabi-gccbug
lrwxrwxrwx 1 root root 41 Mar 18 2011 gcov -> ../../bin/arm-angstrom-linux-gnueabi-gcov
lrwxrwxrwx 1 root root 45 Mar 18 2011 gfortran -> ../../bin/arm-angstrom-linux-gnueabi-gfortran
lrwxrwxrwx 1 root root 42 Mar 18 2011 gprof -> ../../bin/arm-angstrom-linux-gnueabi-gprof
-rwxr-xr-x 1 root root 7660 Mar 16 2011 kill.util-linux-ng
lrwxrwxrwx 1 root root 39 Mar 18 2011 ld -> ../../bin/arm-angstrom-linux-gnueabi-ld
-rwxr-xr-x 1 root root 18964 Mar 16 2011 login.util-linux-ng
-rwxr-xr-x 1 root root 30660 Mar 16 2011 more.util-linux-ng
-rwsr-xr-x 1 root root 58400 Mar 16 2011 mount.util-linux-ng
lrwxrwxrwx 1 root root 39 Mar 18 2011 nm -> ../../bin/arm-angstrom-linux-gnueabi-nm
lrwxrwxrwx 1 root root 44 Mar 18 2011 objcopy -> ../../bin/arm-angstrom-linux-gnueabi-objcopy
lrwxrwxrwx 1 root root 44 Mar 18 2011 objdump -> ../../bin/arm-angstrom-linux-gnueabi-objdump
lrwxrwxrwx 1 root root 43 Mar 18 2011 ranlib -> ../../bin/arm-angstrom-linux-gnueabi-ranlib
lrwxrwxrwx 1 root root 44 Mar 18 2011 readelf -> ../../bin/arm-angstrom-linux-gnueabi-readelf
lrwxrwxrwx 1 root root 41 Mar 18 2011 size -> ../../bin/arm-angstrom-linux-gnueabi-size
lrwxrwxrwx 1 root root 44 Mar 18 2011 strings -> ../../bin/arm-angstrom-linux-gnueabi-strings
lrwxrwxrwx 1 root root 42 Mar 18 2011 strip -> ../../bin/arm-angstrom-linux-gnueabi-strip
-rwsr-xr-x 1 root root 35560 Mar 16 2011 umount.util-linux-ng
-rwxr-xr-x 1 root root 4202 Mar 16 2011 usb-devices
Should there be two “ - - “ dashes ? Or did something go wrong with ./configure ?
Bill
Hi William,
Bill
Thanks John, I’ll try that.
In the mean time, the instructions I was following were: http://www.cloud-rocket.com/2013/07/building-qt-for-beaglebone/
If that helps any ?
From: beagl...@googlegroups.com [mailto:beagl...@googlegroups.com] On Behalf Of William Pretty Security
Sent: Monday, January 13, 2014 11:22 PM
To: beagl...@googlegroups.com
Subject: RE: [beagleboard] Re: Build a QT/11 application for beagleboard black by cross compiling from ubuntu
Hi William,
No virus found in this message.
Checked by AVG - www.avg.com
Version: 2014.0.4259 / Virus Database: 3658/6910 - Release Date: 12/11/13
Internal Virus Database is out of date.
No virus found in this message.
Checked by AVG - www.avg.com
Version: 2014.0.4259 / Virus Database: 3658/7000 - Release Date: 01/13/14
Thanks John, I’ll try that.
In the mean time, the instructions I was following were: http://www.cloud-rocket.com/2013/07/building-qt-for-beaglebone/
If that helps any ??
Also I used “apt-get install g++” to install g++ on my desktop (development) system.
That was probably a mistake L
Bill
No virus found in this message.
Checked by AVG - www.avg.com
Version: 2014.0.4259 / Virus Database: 3658/6910 - Release Date: 12/11/13
Internal Virus Database is out of date.
No virus found in this message.
Checked by AVG - www.avg.com
Version: 2014.0.4259 / Virus Database: 3658/7000 - Release Date: 01/13/14
--
Yeah, there are two dashes before version. The g++ in that folder is just a symbolic link to another file which is two directories down in the bin folder. Does this file exist relative to the original folder:
../../bin/arm-angstrom-linux-gnueabi-g++
Which I believe is this file:
/usr/local/angstrom/arm/bin/arm-angstrom-linux-gnueabi-g++
Does this file exist? My guess is it doesn’t exist.
Clearly you do have a g++ on your system, but that would be the native x86 g++, and not the cross compile g++.
Try typing arm- and then hit the tab twice (autocomplete) to see if you have any arm cross compiler installed on your system.
Regards,
John
Hi John;
When I type arm-[tab][tab] it doesn’t autocomplete.
However, here is the contents of the directory you mentioned.
In the browser it shows as an executable, however when I try to “execute” it I get a “no such program” error message L
Could there be a conflict somewhere in the path or permissions ?
beaglebone@ubuntu:/usr/local/angstrom/arm/bin$ ls -l
-rwxr-xr-x 1 root root 483996 Mar 16 2011 arm-angstrom-linux-gnueabi-addr2line
-rwxr-xr-x 1 root root 503544 Mar 16 2011 arm-angstrom-linux-gnueabi-ar
-rwxr-xr-x 1 root root 853272 Mar 16 2011 arm-angstrom-linux-gnueabi-as
-rwxr-xr-x 1 root root 483800 Mar 16 2011 arm-angstrom-linux-gnueabi-c++filt
-rwxr-xr-x 1 root root 436563 Mar 16 2011 arm-angstrom-linux-gnueabi-cpp
-rwxr-xr-x 1 root root 438687 Mar 16 2011 arm-angstrom-linux-gnueabi-g++
-rwxr-xr-x 1 root root 434700 Mar 16 2011 arm-angstrom-linux-gnueabi-gcc
-rwxr-xr-x 1 root root 17422 Mar 16 2011 arm-angstrom-linux-gnueabi-gccbug
-rwxr-xr-x 1 root root 75976 Mar 16 2011 arm-angstrom-linux-gnueabi-gcov
-rwxr-xr-x 1 root root 3184888 Mar 16 2011 arm-angstrom-linux-gnueabi-gdb
-rwxr-xr-x 1 root root 3184892 Mar 16 2011 arm-angstrom-linux-gnueabi-gdbtui
-rwxr-xr-x 1 root root 442039 Mar 16 2011 arm-angstrom-linux-gnueabi-gfortran
-rwxr-xr-x 1 root root 538904 Mar 16 2011 arm-angstrom-linux-gnueabi-gprof
-rwxr-xr-x 1 root root 873752 Mar 16 2011 arm-angstrom-linux-gnueabi-ld
-rwxr-xr-x 1 root root 490292 Mar 16 2011 arm-angstrom-linux-gnueabi-nm
-rwxr-xr-x 1 root root 629144 Mar 16 2011 arm-angstrom-linux-gnueabi-objcopy
-rwxr-xr-x 1 root root 759480 Mar 16 2011 arm-angstrom-linux-gnueabi-objdump
-rwxr-xr-x 1 root root 503548 Mar 16 2011 arm-angstrom-linux-gnueabi-ranlib
-rwxr-xr-x 1 root root 261868 Mar 16 2011 arm-angstrom-linux-gnueabi-readelf
-rwxr-xr-x 1 root root 748476 Mar 16 2011 arm-angstrom-linux-gnueabi-run
-rwxr-xr-x 1 root root 483988 Mar 16 2011 arm-angstrom-linux-gnueabi-size
-rwxr-xr-x 1 root root 483960 Mar 16 2011 arm-angstrom-linux-gnueabi-strings
-rwxr-xr-x 1 root root 629144 Mar 16 2011 arm-angstrom-linux-gnueabi-strip
-rwxr-xr-x 1 root root 281569 Mar 16 2011 i686-linux-libtool
-rwxr-xr-x 1 root root 281569 Mar 16 2011 libtool
-rwxr-xr-x 1 root root 68311 Mar 16 2011 libtoolize
lrwxrwxrwx 1 root root 9 Mar 18 2011 lrelease -> lrelease4
-rwxr-xr-x 1 root root 1445808 Mar 18 2011 lrelease4
lrwxrwxrwx 1 root root 8 Mar 18 2011 lupdate -> lupdate4
-rwxr-xr-x 1 root root 1873816 Mar 18 2011 lupdate4
lrwxrwxrwx 1 root root 4 Mar 18 2011 moc -> moc4
-rwxr-xr-x 1 root root 907660 Mar 18 2011 moc4
-rwxr-xr-x 1 root root 12344 Mar 16 2011 opkg-cl
-rwxr-xr-x 1 root root 1671 Mar 16 2011 opkg-key
-rwxr-xr-x 1 root root 88372 Mar 16 2011 pkg-config
lrwxrwxrwx 1 root root 13 Mar 18 2011 qdbuscpp2xml -> qdbuscpp2xml4
-rwxr-xr-x 1 root root 1362620 Mar 18 2011 qdbuscpp2xml4
lrwxrwxrwx 1 root root 13 Mar 18 2011 qdbusxml2cpp -> qdbusxml2cpp4
-rwxr-xr-x 1 root root 1562652 Mar 18 2011 qdbusxml2cpp4
lrwxrwxrwx 1 root root 6 Mar 18 2011 qmake -> qmake2
-rwxr-xr-x 1 root root 3272168 Mar 18 2011 qmake2
lrwxrwxrwx 1 root root 4 Mar 18 2011 rcc -> rcc4
-rwxr-xr-x 1 root root 966932 Mar 18 2011 rcc4
lrwxrwxrwx 1 root root 4 Mar 18 2011 uic -> uic4
lrwxrwxrwx 1 root root 5 Mar 18 2011 uic3 -> uic34
-rwxr-xr-x 1 root root 10331364 Mar 18 2011 uic34
-rwxr-xr-x 1 root root 1329196 Mar 18 2011 uic4
-rwxr-xr-x 1 root root 4524 Mar 16 2011 update-alternatives
From: beagl...@googlegroups.com [mailto:beagl...@googlegroups.com] On Behalf Of Louis McCarthy
Sent: Tuesday, January 14, 2014 12:23 PM
To: beagl...@googlegroups.com
Subject: Re: [beagleboard] Re: Build a QT/11 application for beagleboard black by cross compiling from ubuntu
Correction, export PATH=$PATH:/usr/local/angstrom/arm/bin
I forgot the last bin.....
On Tuesday, January 14, 2014 11:20:46 AM UTC-6, Louis McCarthy wrote:
Did you install the right toolchain for your host, 32 bit or 64 bit. If 64 bit you need to include the ia32-libs (apt-get install).
I would also add /usr/local/angstrom/arm/ to your path:
export PATH=$PATH:/usr/local/angstrom/arm
Then try the arm-[tab][tab] again.
Here is the result of that:
beaglebone@ubuntu:~$ export PATH=$PATH:/usr/local/angstrom/arm/bin
beaglebone@ubuntu:~$ g++ --version
g++ (Ubuntu/Linaro 4.8.1-10ubuntu9) 4.8.1
Copyright (C) 2013 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Also I put a dash before the “check” by mistake, however the info may be of use:
beaglebone@ubuntu:~/qt-4.8.5-beagle$ make -check
make: invalid option -- 'c'
make: invalid option -- 'c'
Usage: make [options] [target] ...
This program built for x86_64-pc-linux-gnu
Report bugs to bug-...@gnu.org
I think there must be a syntax error in qabstractanimation.cpp ?
It is the only code that fails “make check”
cd src/corelib/ && make -f Makefile check
make[1]: Entering directory `/home/beaglebone/qt-4.8.5-beagle/src/corelib'
/home/beaglebone/qt-4.8.5-beagle/bin/moc -DQT_SHARED -DQT_BUILD_CORE_LIB -DQT_NO_USING_NAMESPACE -DQT_NO_CAST_TO_ASCII -DQT_ASCII_CAST_WARNINGS -DQT_MOC_COMPAT -DQT_USE_QSTRINGBUILDER -DELF_INTERPRETER=\"/lib64/ld-linux-x86-64.so.2\" -DHB_EXPORT=Q_CORE_EXPORT -DQT_NO_DEBUG -I../../mkspecs/qws/linux-am335x-g++ -I. -I../../include -I../../include/QtCore -I.rcc/release-shared-emb-arm -Iglobal -I../3rdparty/zlib -I../3rdparty/harfbuzz/src -I../3rdparty/md5 -I../3rdparty/md4 -I.moc/release-shared-emb-arm animation/qabstractanimation.h -o .moc/release-shared-emb-arm/moc_qabstractanimation.cpp
/usr/local/angstrom/arm/arm-angstrom-linux-gnueabi/bin/g++ -c -pipe -fno-exceptions -O3 -march=armv7-a -mtune=cortex-a8 -mfpu=neon -mfloat-abi=softfp -Wall -W -D_REENTRANT -fPIC -DQT_SHARED -DQT_BUILD_CORE_LIB -DQT_NO_USING_NAMESPACE -DQT_NO_CAST_TO_ASCII -DQT_ASCII_CAST_WARNINGS -DQT_MOC_COMPAT -DQT_USE_QSTRINGBUILDER -DELF_INTERPRETER=\"/lib64/ld-linux-x86-64.so.2\" -DHB_EXPORT=Q_CORE_EXPORT -DQT_NO_DEBUG -I../../mkspecs/qws/linux-am335x-g++ -I. -I../../include -I../../include/QtCore -I.rcc/release-shared-emb-arm -Iglobal -I../3rdparty/zlib -I../3rdparty/harfbuzz/src -I../3rdparty/md5 -I../3rdparty/md4 -I.moc/release-shared-emb-arm -o .obj/release-shared-emb-arm/qabstractanimation.o animation/qabstractanimation.cpp
make[1]: /usr/local/angstrom/arm/arm-angstrom-linux-gnueabi/bin/g++: Command not found
make[1]: *** [.obj/release-shared-emb-arm/qabstractanimation.o] Error 127
make[1]: Leaving directory `/home/beaglebone/qt-4.8.5-beagle/src/corelib'
make: *** [sub-corelib-check_ordered] Error 2
Thanks for all the help Louis. I really appreciate it!
As you have probably guessed I am new to cross-compiling J
http://www.packtpub.com/building-a-home-security-system-with-beaglebone/book
--
For more options, visit http://beagleboard.org/discuss
---
You received this message because you are subscribed to the Google Groups "BeagleBoard" group.
To unsubscribe from this group and stop receiving emails from it, send an email to beagleboard...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.
No virus found in this message.
Checked by AVG - www.avg.com
Version: 2014.0.4259 / Virus Database: 3681/7004 - Release Date: 01/15/14
Correction, export PATH=$PATH:/usr/local/angstrom/arm/bin
beagl...@ubuntu:~/qt-4.8.5-beagle$ make -check
From: beagl...@googlegroups.com [mailto:beagl...@googlegroups.com] On Behalf Of Louis McCarthy
Sent: Thursday, January 16, 2014 9:42 AM
To: beagl...@googlegroups.com
Subject: Re: [beagleboard] Re: Build a QT/11 application for beagleboard black by cross compiling from ubuntu
You're welcome. Sometimes things sound so clear when I write them, but the next day....not so much :)
Been there myself J
I've created a howto on my blog, for building Qt 5.2 targeted at a BBB running Ubuntu. It is similar to the cloud-rocket site, but using the Linaro toolchain, and I start from the very beginning: Ubuntu virtual machine creation. I tried to be verbose, so maybe you can use it to double check your host configuration. Search for "Bare Metal Qt5.2 Beaglebone" if you are interested.
I’ll give it a look.
Qt 5.2 is very different from 4.x (QPA vs QWS), so I am not recommending that you change, especially if you have a working 4.x application. I am still trying to work out the GUI bugs and figure out exactly what modules I need to compile into Qt (the configure options have significantly changed from 4.x to 5.2)
I think I’ll let YOU squash the bugs J In the mean time, I think I will start over from scratch with the cloud-rocket version.
This time I am going to make sure the compiler works before I continue with the rest of the steps!
Version: 2014.0.4259 / Virus Database: 3681/7007 - Release Date: 01/16/14
No virus found in this message.
Checked by AVG - www.avg.com
Version: 2014.0.4259 / Virus Database: 3681/7007 - Release Date: 01/16/14
Ok;
We have something weird going on here (?)
I started with a fresh VM and just installed the tool chain, from the file I had previously downloaded.
I then gave myself root access and went to the “/usr/local/angstrom/bin” directory.
Here’s what happened:
root@ubuntu:/usr/local/angstrom/arm/bin# arm-angstrom-linux-gnueabi-g++
arm-angstrom-linux-gnueabi-g++: command not found
root@ubuntu:/usr/local/angstrom/arm/bin# arm-angstrom-linux-gnueabi-g++ --version
arm-angstrom-linux-gnueabi-g++: command not found
root@ubuntu:/usr/local/angstrom/arm/bin# ./arm-angstrom-linux-gnueabi-g++ --version
bash: ./arm-angstrom-linux-gnueabi-g++: No such file or directory
When I type “ls –l” I get:
.
.
.
Looks to me like the program is executable. Could it be damaged or am I doing something wrong ?
Bill
--
For more options, visit http://beagleboard.org/discuss
---
You received this message because you are subscribed to the Google Groups "BeagleBoard" group.
To unsubscribe from this group and stop receiving emails from it, send an email to beagleboard...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.
No virus found in this message.
Checked by AVG - www.avg.com
Version: 2014.0.4259 / Virus Database: 3681/7004 - Release Date: 01/15/14
Correction, export PATH=$PATH:/usr/local/angstrom/arm/bin
beagl...@ubuntu:~/qt-4.8.5-beagle$ make -check
@Don & Louis
I feel really dumb L
I discovered my problem when I compared the post on this list to the Cloud-Rocket site.
The post on this list said the desktop environment was: Ubuntu 13.10 64bit (VB).
While the ones on the Cloud-Rocket site said: Ubuntu 12.10 32bit (VMplayer)
The reason I was having so much trouble is I was trying to run a 32 bit app in a 64 bit OS L
I built Ubuntu 12.10 32bit, and now things are rolling right along.
I have yet to compile the hello world program, but I’m getting there …..
Bill
From: beagl...@googlegroups.com [mailto:beagl...@googlegroups.com] On Behalf Of Don deJuan
Sent: Friday, January 17, 2014 12:46 PM
To: beagl...@googlegroups.com
Subject: Re: [beagleboard] Re: Build a QT/11 application for beagleboard black by cross compiling from ubuntu
On 01/17/2014 09:41 AM, Louis McCarthy wrote:
Well i was refering to official Debian image as another possibility
You received this message because you are subscribed to a topic in the Google Groups "BeagleBoard" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/beagleboard/mb1R6NF5RH4/unsubscribe.
To unsubscribe from this group and all its topics, send an email to beagleboard...@googlegroups.com.
I tested it on Robert Nelson's Debian beta found at a link from this forum post:
https://groups.google.com/forum/m/#!category-topic/beagleboard/9EG0SbhwTx0
ubuntu@arm:~$ uname -aLinux arm 3.8.13-bone35 #2 SMP Mon Jan 13 14:52:52 CET 2014 armv7l armv7l armv7l GNU/Linux
ubuntu@arm:~$ qmake -version
QMake version 2.01a
Using Qt version 4.8.4 in /usr/lib/arm-linux-gnueabihf
And I'm trying to compile an hello world in my ubuntu VM VirtualBox ( 32bit ) .lI've downloaded angstrom-2011.03-i686-linux-armv7a-linux-gnueabi-toolchain-qte-4.6.3.tar.bz2then tar -C / -xjf angstrom-2011.03-i686-linux-armv7a-linux-gnueabi-toolchain-qte-4.6.3.tar.bz2
and . /usr/local/angstrom/arm/environment-setup
qtcreator :
the gcc that i'm using is here :/usr/bin/arm-linux-gnueabi-g++the QT version :/usr/local/angstrom/arm/bin/qmake2
and when i wan to make my project I got :arm-angstrom-linux-gnueabi-g++ -c -pipe -g -Wall -W -D_REENTRANT -DQT_CORE_LIB -I/usr/local/angstrom/arm/arm-angstrom-linux-gnueabi/usr/share/qtopia/mkspecs/linux-g++ -I../beagleTest -I/usr/local/angstrom/arm/arm-angstrom-linux-gnueabi//usr/include/qtopia/QtCore -I/usr/local/angstrom/arm/arm-angstrom-linux-gnueabi//usr/include/qtopia -I. -I../beagleTest -I. -o main.o ../beagleTest/main.cpparm-angstrom-linux-gnueabi-g++ -o beagleTest main.o -L/usr/local/angstrom/arm/arm-angstrom-linux-gnueabi//usr/lib -lglib-2.0 -lQtCoreE -lpthread
After, I put the file beagleTest in my beagle directory .
sudo chmod +x beagleTestubuntu@arm:~$ ./beagleTest -qws-bash: ./beagleTest: No such file or directory
I'm really lost, do you have an idea ?Why ?ubuntu@arm:~$ readelf -h beagleTestELF Header:Magic: 7f 45 4c 46 01 01 01 00 00 00 00 00 00 00 00 00Class: ELF32Data: 2's complement, little endianVersion: 1 (current)OS/ABI: UNIX - System VABI Version: 0Type: EXEC (Executable file)Machine: ARMVersion: 0x1Entry point address: 0x8640Start of program headers: 52 (bytes into file)Start of section headers: 100096 (bytes into file)Flags: 0x4000002, has entry point, Version4 EABISize of this header: 52 (bytes)Size of program headers: 32 (bytes)Number of program headers: 8Size of section headers: 40 (bytes)Number of section headers: 39Section header string table index: 36
--
You received this message because you are subscribed to a topic in the Google Groups "BeagleBoard" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/beagleboard/mb1R6NF5RH4/unsubscribe.
To unsubscribe from this group and all its topics, send an email to beagleboard...@googlegroups.com.
--
For more options, visit http://beagleboard.org/discuss
---
You received this message because you are subscribed to a topic in the Google Groups "BeagleBoard" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/beagleboard/mb1R6NF5RH4/unsubscribe.
To unsubscribe from this group and all its topics, send an email to beagleboard...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
How did you get rid of the X server dependencies?
I'm using QT Creator. Building a new QT application seems to require X server.
On a headless version of Ubuntu 14.04 I can get the pre-compiled demos to work using -platform linuxfb
However, my custom compiled code bombs out trying to start X server.
Is there a special way to build the project to target linuxfb?