OESF | ELSI | pdaXrom | OpenZaurus | Zaurus Themes | Community Links | Ibiblio

IPB

Welcome Guest ( Log In | Register )

Profile
Personal Photo
Options
Options
Personal Statement
troika doesn't have a personal statement currently.
Personal Info
troika
Age Unknown
Gender Not Set
Location Unknown
Birthday Unknown
Interests
No Information
Statistics
Joined: 24-April 06
Profile Views: 573*
Last Seen: 22nd May 2006 - 11:02 AM
Local Time: Nov 23 2014, 05:08 PM
6 posts (0 per day)
Contact Information
AIM No Information
Yahoo No Information
ICQ No Information
MSN No Information
Contact Private
* Profile views updated each hour

troika

Members


Topics
Posts
Comments
Friends
My Content
3 May 2006
I have an application which runs smoothly on my development machine but occasionally segfaults when I run the cross-compiled binary on my Zaurus. Debugging it on the Zaurus itself would be tedious. So I'm using gdb's ARM simulator, but I only get so far:

$ file test.x
test.x: ELF 32-bit LSB executable, ARM, version 1 (ARM), for GNU/Linux 2.0.0, dynamically linked (uses shared libs), for GNU/Linux 2.0.0, not stripped

$ arm-linux-nm test.x
0001043c ? _DYNAMIC
00010424 ? _GLOBAL_OFFSET_TABLE_
00008404 R _IO_stdin_used
00010418 ? __CTOR_END__
00010414 ? __CTOR_LIST__
00010420 ? __DTOR_END__
0001041c ? __DTOR_LIST__
000104dc A __bss_end__
000104dc A __bss_start
000104dc A __bss_start__
00010408 D __data_start
w __deregister_frame_info
000083a8 t __do_global_ctors_aux
000082ec t __do_global_dtors_aux
000104dc A __end__
w __gmon_start__
U __libc_start_main@@GLIBC_2.0
w __register_frame_info
000104dc A _bss_end__
000104dc A _edata
000104dc A _end
000083f0 ? _fini
00008238 ? _init
00008280 T _start
U abort@@GLIBC_2.0
000082b4 t call_gmon_start
00010410 d completed.4
00010408 W data_start
0000835c t fini_dummy
00010414 d force_to_data
00010414 d force_to_data
000082b4 t gcc2_compiled.
000083a8 t gcc2_compiled.
000083f0 t gcc2_compiled.
000082ec t gcc2_compiled.
0000836c t gcc2_compiled.
000083e0 t init_dummy
0000836c T main
0001040c d p.3

$ arm-elf-gdb test.x
GNU gdb 5.0
Copyright 2000 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "--host=i686-pc-linux-gnu --target=arm-elf"...
(gdb) target sim
Connected to the simulator.
(gdb) load
Loading section .interp, size 0x13 vma 0x80f4
Loading section .note.ABI-tag, size 0x20 vma 0x8110
Loading section .hash, size 0x30 vma 0x8130
Loading section .dynsym, size 0x70 vma 0x8160
Loading section .dynstr, size 0x57 vma 0x81d0
Loading section .gnu.version, size 0xe vma 0x8228
Loading section .gnu.version_r, size 0x20 vma 0x8238
Loading section .rel.got, size 0x8 vma 0x8258
Loading section .rel.plt, size 0x20 vma 0x8260
Loading section .init, size 0x18 vma 0x8280
Loading section .plt, size 0x50 vma 0x8298
Loading section .text, size 0x158 vma 0x82e8
Loading section .fini, size 0x14 vma 0x8440
Loading section .rodata, size 0x10 vma 0x8454
Loading section .data, size 0xc vma 0x10464
Loading section .ctors, size 0x8 vma 0x10470
Loading section .dtors, size 0x8 vma 0x10478
Loading section .got, size 0x20 vma 0x10480
Loading section .dynamic, size 0xa0 vma 0x104a0
Start address 0x82e8
Transfer rate: 8704 bits in <1 sec.
(gdb) run
Starting program: [...]/test.x

Program exited with code 0324.
[Switching to process 0]
(gdb)


I imagine the simulation fails because it can't find some or all of these symbols:
w __deregister_frame_info
w __gmon_start__
U __libc_start_main@@GLIBC_2.0
w __register_frame_info
U abort@@GLIBC_2.0


So how do I link libraries into the simulation? I haven't found an answer in the gdb manual.
24 Apr 2006
Sorry if this is a dumb question, but do I really need gcc 2.96 to cross-compile a Qt application for the Zaurus? I've followed the compiler setup instructions on the OESF wiki to the letter, but I get this error when I try to compile the example application in /opt/Qtopia/example:

[joshs@localhost example]$ /opt/Qtopia/tmake/bin/tmake -o Makefile example.pro
[joshs@localhost example]$ make
/opt/Qtopia/bin/uic examplebase.ui -o ./examplebase.h
gcc296 -c -pipe -DQWS -fno-exceptions -fno-rtti -Wall -W -O2 -fno-default-inline -DNO_DEBUG -I/opt/Qtopia/include -I/opt/Qtopia/include -o main.o main.cpp
make: gcc296: Command not found
make: *** [main.o] Error 127

I've tried using GCC 4.0.2 to compile the example, but of course I just get scads of linker errors. The thing is, my application (the one I'm actually trying to port to Qtopia) is written Qt4 anyway, and this example is for Qt3. So I'm wondering whether there isn't a more current example out there (is qtopia-free-1.5.0-1.i386.rpm compatible with Qt4?) which I could work off of, and which doesn't need an older version of GCC. I'm a little confused about the interdependencies among the various versions of Qt, QPE, Qtopia, and the Embedix tools, and could really use a working example to model my own project after while I sort it out.
Last Visitors
troika has no visitors to display.

Comments
Other users have left no comments for troika.

Friends
There are no friends to display.
RSS Lo-Fi Version Time is now: 23rd November 2014 - 04:08 PM