Build a QT/11 application for beagleboard black by cross compiling from ubuntu

Hi everyone,

I’m a little confused about how proceed to create QT/X11 applications for beaglebone black.
First of all i have succesfully developed, deployed and executed a first simple GUI QT/embedded application
following this tutorials http://www.cloud-rocket.com/2013/07/building-qt-for-beaglebone/
and now i’d like to build a similar application for X11.

Particularly, i don’t understand how to perform configure to build right libraries to copy to BBB.
Please help me, unfortunately i spent days in useless attemps to build QT/X11 for BBB that didn’t work.

Thanks a lot.

I don’t understand when you talk about “deployed” did you mean “on the BBB” ?
FYI I’ve also tried from the same blog you linked and have been tried it during days
with Angstrom and never succeeded .
Even if I’ve read many post about it here Qt on the BBB seems to be a hard path.
Or maybe we both missed a tutorial that should be officially posted somewhere…

Yes i meant on the BBB copying the executable file.
That tutorial worked well for me, consider that to run tha executable
you need to exit form X-environemt and launch the program with -qws
parameter.

Whati kind of problems did you have ?

I used the instructions and got a working BBB with a CAP LCD7. However I needed to cut the eMMC lines to the LCD CAP (BeagleToys one), it is a A3 Ref but still did not work, but the site say is 100% BBB compatible… ha ha . The only thing that does not work is the mouse when used with the LCD CAP, but that is not a problem to me as I used the touch screen. I made a document up with the instructions as I had to change some things to get the GUI , GDD and LCD cap working.

I also think QT creator has a bug , one has to delete the xx.user file and then setup the kit, else you cannot change the kit, it still uses the original kit. So just be sure to select the correct kit when started after the .user file was was deleted.

It works great !!

Building and setting up QT environment for BeagleBone

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.

1. My environment-

  • Target: BeagleBone Black running Angstrom

  • QT: 4.8.5

2. Setup Angstrom cross-compile toolchain for Linux

Download :

Run

$> tar -C / -xjf angstrom-2011.03-i686-linux-armv7a-linux-gnueabi-toolchain-qte-4.6.3.tar.bz2

3. Download and un-tar QT

wget http://download.qt-project.org/official_releases/qt/4.8/4.8.5/qt-everywhere-opensource-src-4.8.5.tar.gz

tar -xzf qt-everywhere-opensource-src-4.8.5.tar.gz

mv qt-everywhere-opensource-src-4.8.5 qt-4.8.5-beagle

4. Create qmake.conf

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:

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

Ciao Mirko,

I’ve writen an answer but it seems to be in another thread or lost.
What I’ve said was that I tried and got (from mu comment on the blog ):

(…) 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.

So now my purpose is to be able to cross compile but now without Angstrom (using Debian currently).
I’ve seen in a comment that someone successfully compiled with Linaro Toolchain instead.
Please advise.

David

I performed only an additional step before to start that tutorial : i’ve installed GNU c++
compiler and everything worked.

i’ve neved had this kind of problem, just to clarify when do you get this ?
after you’ve copied executable on the BBB? or when you launch it with QT creator ?

I experienced a simpler way to work with qt embedded for BBB following Derek Tutorial
http://www.youtube.com/watch?v=kP7uvOu9hoQ where you don’t need to cross compile
QT:

  • install toolchain on your host
  • install qt4-embedded on BBB (opkg install qt4-embedded - fors-depends
  • create on your host a QT creator version from (/usr/local/angstrom/… qmake2)
  • create your kit to deploy app in BBB

The only problem i had is that installing qt4-embedded i had no linuxinput driver support for keyboard (because it’not in the default QT i guess)
so i had to cross-compile qt as shown in Meir tutorial(http://www.cloud-rocket.com/2013/07/building-qt-for-beaglebone/) with configure:

./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-kbd-linuxinput

then to make mouse and keyboard work you have copy plugins dir in /opt/qt from your host to Beaglebone black and export like this before run your app:

QWS_MOUSE_PROTO = “LinuxInput:/dev/input/touchscreen0 MouseMan:/dev/input/mouse1” Touchscreen and mouse

QWS_KEYBOARD = “LinuxInput:/dev/input/event2 LinuxInput:/dev/input/event3:keymap=…/it.qmap” LDC keys and my usb keyboard mapped to italian layout

QT_PLUGIN_PATH = “/opt/qt/plugins” needed for keyboard and MouseMan drivers

It was very but at the end everything works fine !

Mirko :
Thanks for your answer.
Actually, I left Angstrom for a while ( independantly that it’s going to be replaced by Debian) so intend to use Debian instead. Nevertheless, I suppose that it’s not far from what you have done with Angstrom anyway.

As far as I know, the Angstrom toolchain comes with qmake for qt-embedded, the Linaro toolchain does not, hence the reason for cross compiling Qt.

When you cross compile Qt, you end up with an installation folder (like /opt/qt or /usr/local/qt). This folder is where you point Qt Creator (Tools → Options → Build & Run → Qt Versions). Qt Creator can then use the qmake executable, under the bin folder, to create your application to run on the BBB.

In fact, you shouldn’t need to compile the whole Qt project, just enough of the qmake tools to build apps to match the Qt version already installed on the BBB.

Running ‘ldd <app_name>’ on your host will result in “not a dynamic executable”, because it is an ARM binary. But if you transfer the binary file to the BBB and run ldd again it will show you the proper output.

Louis

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

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

black by cross compiling from ubuntu

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 ?

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

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 ?

http://www.packtpub.com/building-a-home-security-system-with-beaglebone/book

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

http://www.packtpub.com/building-a-home-security-system-with-beaglebone/book

Actually if you talk about the qmake.conf : this is not a problem as it’s easy to change the paths to a different toolchain in there ( to point to -gcc -ld, etc) . I’d rather prefer to use the power of my PC to compile all and send binaries to the BBB . the ldd I have done was to show what were missing but at the end it was an arm format.

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

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.