Hi Everbody, I was successful at running example GUI application on mini2440. I was really happy. But my happiness has gone away after realising that I cannot do my own application well. I am using qt creator and the desired compiler. I cannot set the qt creator well to compile my application. I have tried many tutorials but I always found some error in my solutions. For example here you can see that tool chain is not found. (This is attached). How can I compile my application with qt creator? I will be able to find to develop complex application after compiling the first simple application :) Thank for your help David
qt creator;mini2440;GUI
I have forgotten the most important things that the examples were compiled by me from command terminal. So I have problem only with qt creator.
Hello, you can refer following link to get the way compile your QtCreator program and run it in mini2440 http://mini2440vietnam.blogspot.com/2011/05/programming-application-for-... Thank you.
How to create and Compile QT Application for Mini 2440 in Fedora 17. Hi, I am newbie at Mini 2440 an Qt programming . I have a mini 2440 installed Qtopia in it . I also have a computer Fedora 17 installed. I use Qt creator to create QT application. How to create and compile a QT program in Fedora 17 pc for mini 2440 then load program to mini 2440 and run it. Can Anyone Please help me… Thank you..
plezeeeeee help how to instal QT creater in mini2440..plz plz plz....replay me,,,and tell me the commands ....i purchesd mini 244o but i dnt know how to instal qt creater in mini 2440.....plz tell me the commands
navaj you can not install qtcreator on mini2440 you should get qt4.6.2 source and compile it using arm-linux-gcc that comes with mini2440. Then install qtcreator on your linux host machine and configure it to use that compiled version. There are couple sites yu can find that explained this procedure. Be aware that Qt and Qtcreator are two different things!! Qtcreator is just an IDE. Qt is a library/framework that can be loaded into Qtcreator or any other IDEs.
hello experts, i am 3 month older in mini2440 platform....i made GUI using the qt which is called designer(in qt2)...hold in arm-qtopia. but it is easier to make GUI and programe in qt4 version. but when i build my program,i see the bin file but can't have the desktop file. why is it happened?? second> does mini2440 supports new qt version. if yes then plzz give the solution. thank you.
Search for Qt creator. Qt2 is ancient. Lots of things can go wrong. Mini2440 with the right support supports Qt4 Maybe this helps: http://mini2440vietnam.blogspot.co.nz/2011/04/upgrade-qt462-in-mini2440....
$cd /usr/local $git clone http://github.com/kergoth/tslib.git $export PATH=/usr/local/arm/4.3.2/bin:$PATH $export CROSS_COMPILE=arm-none-linux-gnueabi- $export CC=${CROSS_COMPILE}gcc $export CFLAGS=-march=armv4t $export CXX=${CROSS_COMPILE}"g++" $export AR=${CROSS_COMPILE}"ar" $export AS=${CROSS_COMPILE}"as" $export RANLIB=${CROSS_COMPILE}"ranlib" $export LD=${CROSS_COMPILE}"ld" $export STRIP=${CROSS_COMPILE}"strip" $export ac_cv_func_malloc_0_nonnull=yes $cd /usr/local/tslib $./autogen-clean.sh $./autogen.sh $./configure --host=arm-linux --prefix=/home/tslib --enable-shared=yes --enable-static=yes $make $make install *************************************************** i did the first step...OOps!error that fatal: destination path 'tslib' already exists and is not an empty directory. that means the tslib is already instaled.. because when i see /home/tslib it is installed...
@davef after that when i ./configure the step it tells the error: and in making the $make and $make install aslo gets errors. can you give me any solution. thank you.
There is no point trying to proceed with make and make install until you have the first error sort out. I think I'd be checking those files in: /home/tslib# ls bin etc include lib have in fact been cross-compiled for armv4t Pick one and do: readelf -a <filename> and check towards the end of the screen message that you see armv4t
here are the results:- ELF Header: Magic: 7f 45 4c 46 01 01 01 00 00 00 00 00 00 00 00 00 Class: ELF32 Data: 2's complement, little endian Version: 1 (current) OS/ABI: UNIX - System V ABI Version: 0 Type: EXEC (Executable file) Machine: Intel 80386 Version: 0x1 Entry point address: 0x8048a80 Start of program headers: 52 (bytes into file) Start of section headers: 18932 (bytes into file) Flags: 0x0 Size of this header: 52 (bytes) Size of program headers: 32 (bytes) Number of program headers: 8 Size of section headers: 40 (bytes) Number of section headers: 30 Section header string table index: 27 Section Headers: [Nr] Name Type Addr Off Size ES Flg Lk Inf Al [ 0] NULL 00000000 000000 000000 00 0 0 0 [ 1] .interp PROGBITS 08048134 000134 000013 00 A 0 0 1 [ 2] .note.ABI-tag NOTE 08048148 000148 000020 00 A 0 0 4 [ 3] .note.gnu.build-i NOTE 08048168 000168 000024 00 A 0 0 4 [ 4] .hash HASH 0804818c 00018c 000134 04 A 6 0 4 [ 5] .gnu.hash GNU_HASH 080482c0 0002c0 000044 04 A 6 0 4 [ 6] .dynsym DYNSYM 08048304 000304 000260 10 A 7 1 4 [ 7] .dynstr STRTAB 08048564 000564 00018d 00 A 0 0 1 [ 8] .gnu.version VERSYM 080486f2 0006f2 00004c 02 A 6 0 2 [ 9] .gnu.version_r VERNEED 08048740 000740 000040 00 A 7 1 4 [10] .rel.dyn REL 08048780 000780 000018 08 A 6 0 4 [11] .rel.plt REL 08048798 000798 0000e0 08 A 6 13 4 [12] .init PROGBITS 08048878 000878 000030 00 AX 0 0 4 [13] .plt PROGBITS 080488a8 0008a8 0001d0 04 AX 0 0 4 [14] .text PROGBITS 08048a80 000a80 001adc 00 AX 0 0 16 [15] .fini PROGBITS 0804a55c 00255c 00001c 00 AX 0 0 4 [16] .rodata PROGBITS 0804a578 002578 0002e7 00 A 0 0 8 [17] .eh_frame PROGBITS 0804a860 002860 000004 00 A 0 0 4 [18] .ctors PROGBITS 0804bef4 002ef4 000008 00 WA 0 0 4 [19] .dtors PROGBITS 0804befc 002efc 000008 00 WA 0 0 4 [20] .jcr PROGBITS 0804bf04 002f04 000004 00 WA 0 0 4 [21] .dynamic DYNAMIC 0804bf08 002f08 0000e8 08 WA 7 0 4 [22] .got PROGBITS 0804bff0 002ff0 000004 04 WA 0 0 4 [23] .got.plt PROGBITS 0804bff4 002ff4 00007c 04 WA 0 0 4 [24] .data PROGBITS 0804c080 003080 001860 00 WA 0 0 32 [25] .bss NOBITS 0804d8e0 0048e0 008588 00 WA 0 0 32 [26] .comment PROGBITS 00000000 0048e0 000025 01 MS 0 0 1 [27] .shstrtab STRTAB 00000000 004905 0000ee 00 0 0 1 [28] .symtab SYMTAB 00000000 004ea4 000890 10 29 72 4 [29] .strtab STRTAB 00000000 005734 0005ac 00 0 0 1 Key to Flags: W (write), A (alloc), X (execute), M (merge), S (strings) I (info), L (link order), G (group), x (unknown) O (extra OS processing required) o (OS specific), p (processor specific) There are no section groups in this file. Program Headers: Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg Align PHDR 0x000034 0x08048034 0x08048034 0x00100 0x00100 R E 0x4 INTERP 0x000134 0x08048134 0x08048134 0x00013 0x00013 R 0x1 [Requesting program interpreter: /lib/ld-linux.so.2] LOAD 0x000000 0x08048000 0x08048000 0x02864 0x02864 R E 0x1000 LOAD 0x002ef4 0x0804bef4 0x0804bef4 0x019ec 0x09f74 RW 0x1000 DYNAMIC 0x002f08 0x0804bf08 0x0804bf08 0x000e8 0x000e8 RW 0x4 NOTE 0x000148 0x08048148 0x08048148 0x00044 0x00044 R 0x4 GNU_STACK 0x000000 0x00000000 0x00000000 0x00000 0x00000 RW 0x4 GNU_RELRO 0x002ef4 0x0804bef4 0x0804bef4 0x0010c 0x0010c R 0x1 Section to Segment mapping: Segment Sections... 00 01 .interp 02 .interp .note.ABI-tag .note.gnu.build-id .hash .gnu.hash .dynsym .dynstr .gnu.version .gnu.version_r .rel.dyn .rel.plt .init .plt .text .fini .rodata .eh_frame 03 .ctors .dtors .jcr .dynamic .got .got.plt .data .bss 04 .dynamic 05 .note.ABI-tag .note.gnu.build-id 06 07 .ctors .dtors .jcr .dynamic .got Dynamic section at offset 0x2f08 contains 24 entries: Tag Type Name/Value 0x00000001 (NEEDED) Shared library: [libts-1.0.so.0] 0x00000001 (NEEDED) Shared library: [libdl.so.2] 0x00000001 (NEEDED) Shared library: [libc.so.6] 0x0000000f (RPATH) Library rpath: [/home/tslib/lib] 0x0000000c (INIT) 0x8048878 0x0000000d (FINI) 0x804a55c 0x00000004 (HASH) 0x804818c 0x6ffffef5 (GNU_HASH) 0x80482c0 0x00000005 (STRTAB) 0x8048564 0x00000006 (SYMTAB) 0x8048304 0x0000000a (STRSZ) 397 (bytes) 0x0000000b (SYMENT) 16 (bytes) 0x00000015 (DEBUG) 0x0 0x00000003 (PLTGOT) 0x804bff4 0x00000002 (PLTRELSZ) 224 (bytes) 0x00000014 (PLTREL) REL 0x00000017 (JMPREL) 0x8048798 0x00000011 (REL) 0x8048780 0x00000012 (RELSZ) 24 (bytes) 0x00000013 (RELENT) 8 (bytes) 0x6ffffffe (VERNEED) 0x8048740 0x6fffffff (VERNEEDNUM) 1 0x6ffffff0 (VERSYM) 0x80486f2 0x00000000 (NULL) 0x0 Relocation section '.rel.dyn' at offset 0x780 contains 3 entries: Offset Info Type Sym.Value Sym. Name 0804bff0 00000506 R_386_GLOB_DAT 00000000 __gmon_start__ 0804d8e0 00002205 R_386_COPY 0804d8e0 stderr 0804d900 00001f05 R_386_COPY 0804d900 stdout Relocation section '.rel.plt' at offset 0x798 contains 28 entries: Offset Info Type Sym.Value Sym. Name 0804c000 00000107 R_386_JUMP_SLOT 00000000 open 0804c004 00000207 R_386_JUMP_SLOT 00000000 mmap 0804c008 00000307 R_386_JUMP_SLOT 00000000 qsort 0804c00c 00000407 R_386_JUMP_SLOT 00000000 signal 0804c010 00000507 R_386_JUMP_SLOT 00000000 __gmon_start__ 0804c014 00000707 R_386_JUMP_SLOT 00000000 __printf_chk 0804c018 00000807 R_386_JUMP_SLOT 00000000 getenv 0804c01c 00000907 R_386_JUMP_SLOT 00000000 write 0804c020 00000a07 R_386_JUMP_SLOT 00000000 memset 0804c024 00000b07 R_386_JUMP_SLOT 00000000 ts_read_raw 0804c028 00000c07 R_386_JUMP_SLOT 00000000 __libc_start_main 0804c02c 00000d07 R_386_JUMP_SLOT 00000000 read 0804c030 00000e07 R_386_JUMP_SLOT 00000000 perror 0804c034 00000f07 R_386_JUMP_SLOT 00000000 usleep 0804c038 00001007 R_386_JUMP_SLOT 00000000 free 0804c03c 00001107 R_386_JUMP_SLOT 00000000 fflush 0804c040 00001207 R_386_JUMP_SLOT 00000000 ts_config 0804c044 00001307 R_386_JUMP_SLOT 00000000 ioctl 0804c048 00001407 R_386_JUMP_SLOT 00000000 strlen 0804c04c 00001507 R_386_JUMP_SLOT 00000000 ts_open 0804c050 00001607 R_386_JUMP_SLOT 00000000 select 0804c054 00001707 R_386_JUMP_SLOT 00000000 close 0804c058 00001807 R_386_JUMP_SLOT 00000000 malloc 0804c05c 00001907 R_386_JUMP_SLOT 00000000 __stack_chk_fail 0804c060 00001a07 R_386_JUMP_SLOT 00000000 ts_fd 0804c064 00001b07 R_386_JUMP_SLOT 00000000 __sprintf_chk 0804c068 00001c07 R_386_JUMP_SLOT 00000000 munmap 0804c06c 00001d07 R_386_JUMP_SLOT 00000000 exit There are no unwind sections in this file. Symbol table '.dynsym' contains 38 entries: Num: Value Size Type Bind Vis Ndx Name 0: 00000000 0 NOTYPE LOCAL DEFAULT UND 1: 00000000 0 FUNC GLOBAL DEFAULT UND open@GLIBC_2.0 (2) 2: 00000000 0 FUNC GLOBAL DEFAULT UND mmap@GLIBC_2.0 (2) 3: 00000000 0 FUNC GLOBAL DEFAULT UND qsort@GLIBC_2.0 (2) 4: 00000000 0 FUNC GLOBAL DEFAULT UND signal@GLIBC_2.0 (2) 5: 00000000 0 NOTYPE WEAK DEFAULT UND __gmon_start__ 6: 00000000 0 NOTYPE WEAK DEFAULT UND _Jv_RegisterClasses 7: 00000000 0 FUNC GLOBAL DEFAULT UND __printf_chk@GLIBC_2.3.4 (3) 8: 00000000 0 FUNC GLOBAL DEFAULT UND getenv@GLIBC_2.0 (2) 9: 00000000 0 FUNC GLOBAL DEFAULT UND write@GLIBC_2.0 (2) 10: 00000000 0 FUNC GLOBAL DEFAULT UND memset@GLIBC_2.0 (2) 11: 00000000 0 FUNC GLOBAL DEFAULT UND ts_read_raw 12: 00000000 0 FUNC GLOBAL DEFAULT UND __libc_start_main@GLIBC_2.0 (2) 13: 00000000 0 FUNC GLOBAL DEFAULT UND read@GLIBC_2.0 (2) 14: 00000000 0 FUNC GLOBAL DEFAULT UND perror@GLIBC_2.0 (2) 15: 00000000 0 FUNC GLOBAL DEFAULT UND usleep@GLIBC_2.0 (2) 16: 00000000 0 FUNC GLOBAL DEFAULT UND free@GLIBC_2.0 (2) 17: 00000000 0 FUNC GLOBAL DEFAULT UND fflush@GLIBC_2.0 (2) 18: 00000000 0 FUNC GLOBAL DEFAULT UND ts_config 19: 00000000 ...stripped-down
If that is the whole screen output message then you have not cross-compiled it. There should be something like: TAG: armv4t about 4-5 lines from the bottom of that file.
Go to the downloads page and grab a copy of the mini2440 4.3.2 toolchain and put it on your host. Then follow this tutorial: http://mini2440vietnam.blogspot.co.nz/2011/04/upgrade-qt462-in-mini2440.... Another one that will help http://www.sereno-labs.com/qt-4-6-2-installation-procedure-for-friendlya... Good luck!
@davef i couldn't...... i tried it many times but fails.... can you tell me about trolltech designer working and how to use it and code in it i tried googled it but no more information. i am felling bad....
If you post the error message then someone might be able to help. I wouldn't waste my time trying to develop an application for Qtopia. It is ancient. Have you got a reason for using that system?
hello davef, i am very thankful to you that you helped me... actually i need your help to know about i2c. i posted my question in i2c thread but no one give me any reply...it's been more then 10 days..that's why i am asking. [/code] ... fd=open("/dev/i2c/0", O_RDWR); if(fd<0) { printf("Error open!\n"); } buf[0]=0x00; buf[1]=0xff; io=ioctl(fd,0x703,0x50); if(io<0) { printf("Error ioctl!\n"); } wbyte=write(fd,buf,2); if(wbyte!=1) { printf("Wbyte: %d\n",wbyte); printf("Error write!\n"); } .. [code/] what is mean of 0x703 and 0x50; please tell me... thanks.
Yahallo everyone ! I am new in embedded linux on mini2440 ! i am using qt everywhere 4.7.2 to build my Gui app. when i using "./untitled -qws" i have error "./untitled: error while loading shared libraries: /opt/pte/lib/libQtGui.so.4: invalid ELF header" i dont know what to do... everyone can help me ? Thanks !
On the command line on the host computer type in: readelf -a <untitled> and tell us what you see on the last 4-5 lines.
Yahallo davef ! Thanks for rep ! i go to "/home/fanning/mini2440" where I create GUI programs using qt everywhere and type "readelf -a <untitled>", result "bash: syntax error near unexpected token `newline'" on terminal on mini2440 i type "[root@FriendlyARM /home]# readelf -a <untitled>" result "-sh: syntax error: newline unexpected" I dont know why !!! .......
What extra tools did you load on to your host? build-essential automake libtool libncurses5-dev I think Linux embedded developers, who write tutorials, assume that you know to have these tools on your host. Fortunately, I worked with a helpful software guy when I started with the mini2440! See if those help.
Yahallo davef Thanks for rep ! I install elfutils with "sudo apt-get instsall elfutils" go to home/fanning/mini2440 and type "readelf -a ./untitled" and the result on the last: . . . Displaying notes found at file offset 0x00000188 with length 0x00000020: Owner Data size Description GNU 0x00000010 NT_GNU_ABI_TAG (ABI version tag) OS: Linux, ABI: 2.6.32 Attribute Section: aeabi File Attributes Tag_CPU_name: "4T" Tag_CPU_arch: v4T Tag_ARM_ISA_use: Yes Tag_THUMB_ISA_use: Thumb-1 Tag_ABI_PCS_wchar_t: 4 Tag_ABI_FP_denormal: Needed Tag_ABI_FP_exceptions: Needed Tag_ABI_FP_number_model: IEEE 754 Tag_ABI_align_needed: 8-byte Tag_ABI_enum_size: int Thanks
The good news is that you have successfully cross-compiled it for the mini2440. > Tag_CPU_arch: v4T Never installed elfutils, but obviously you needed it.
Yahallo davef ! I tried again and still same error "[root@FriendlyARM /home]# export LD_LIBRARY_PATH=/opt/pte/lib [root@FriendlyARM /home]# export QTDIR=/opt/pte/ [root@FriendlyARM /home]# export QWS_MOUSE_PROTO=IntelliMouse:/dev/input/event0 [root@FriendlyARM /home]# export QWS_DISPLAY=LinuxFB:mmWidth=310:mmHeight=190 [root@FriendlyARM /home]# ./untitled -qws ./untitled: error while loading shared libraries: /opt/pte/lib/libQtGui.so.4: invalid ELF header"
Yahallo davef ! When you do a readelf on /opt/pte/lib/libQtGui.so.4 the result : Attribute Section: aeabi File Attributes Tag_CPU_name: "ARM920T" Tag_CPU_arch: v4T Tag_ARM_ISA_use: Yes Tag_THUMB_ISA_use: Thumb-1 Tag_ABI_PCS_wchar_t: 4 Tag_ABI_FP_denormal: Needed Tag_ABI_FP_exceptions: Needed Tag_ABI_FP_number_model: IEEE 754 Tag_ABI_align_needed: 8-byte Tag_ABI_align_preserved: 8-byte, except leaf SP Tag_ABI_enum_size: int Tag_ABI_optimization_goals: Aggressive Speed
ARM920T is correct for the mini2440. I guess it is interchangeable with 4T. Just checking ... /opt/pte/lib is actually on the target?
My libQtGui.so.4 says Tag_CPU_name: "4T" maybe yours is not correct. All my cross-compilation is done using the Pengutronix tools. Maybe, other tools give it a different name. I don't recall what readelf told me years ago when I was using the FriendlyArm toolchain.
Yahallo davef ! Thanks for rep ! I copy lib qteverywhere on desktop to mini2440 (libqtgui, libqtcore...) I try to run app gui on mini2440 for 2 week but dont work....
Which tutorial are you following? I recall one of the tricks was getting the correct library paths (there was a long Qt thread with a solution on this site ... however I don't think it had your particular error message. It might be helpful searching through the Qt section on this old forum http://billforums.station51.net/
Yahallo davef ! i folowing this tourial https://sites.google.com/site/embedded247/escourse/qtinstall Thanks
Yahallo davef ! i cant access friendlyarm.net for 2 dAy. I dont undertand what you say ! Ts_calibrate ?
Think the server was down. As the first step in testing that your tslib works correctly on the target doesn't the tutorial say to do a: ts_calibrate on the command line
Sorry, your tutorial may not say that. Do a Google search for <mini2440vietnam> and download his Qt tutorial.