ЗАО «ЗЭО»
Техническая поддержка пользователей => ОС Linux, U-Boot => Тема начата: QwerTech от 20 Августа, 2010, 23:25:16
-
Не работает мышь.
У меня тион про2
Вот лог загрузки линукса:
U-Boot 1.3.3-svn894 (Mar 5 2010 - 12:14:38)
CPU: Cirrus Logic EP9315 rev. E2
DRAM: 64 MB
Flash: 64 MB
Hit any key to stop autoboot: 0
Copy ramdisk to RAM...
## Booting kernel from Legacy Image at 60080000 ...
Image Name: Linux-2.6.20.4
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 1806988 Bytes = 1.7 MB
Load Address: 00008000
Entry Point: 00008000
Loading Kernel Image ... OK
OK
## Loading init Ramdisk from Legacy Image at 00800000 ...
Image Name: Ramdisk
Image Type: ARM Linux RAMDisk Image (gzip compressed)
Data Size: 2923662 Bytes = 2.8 MB
Load Address: 00000000
Entry Point: 00000000
Starting kernel ...
Uncompressing Linux......................................................
.............................................................. done, boot
ing the kernel.
Linux version 2.6.20.4 (asv@asv) (gcc version 4.3.2 (Sourcery G++ Lite 20
08q3-72) ) #3 PREEMPT Mon Apr 27 17:20:07 MSD 2009
CPU: ARM920T [41129200] revision 0 (ARMv4T), cr=c0007177
Machine: Tion-Pro2 Board
Ignoring unrecognised tag 0x54410008
Memory policy: ECC disabled, Data cache writeback
CPU0: D VIVT write-back cache
CPU0: I cache: 16384 bytes, associativity 64, 32 byte lines, 8 sets
CPU0: D cache: 16384 bytes, associativity 64, 32 byte lines, 8 sets
Built 1 zonelists. Total pages: 16192
Kernel command line: console=ttyAM0,57600n8 root=/dev/ram0
PID hash table entries: 256 (order: 8, 1024 bytes)
Console: colour dummy device 80x30
Dentry cache hash table entries: 8192 (order: 3, 32768 bytes)
Inode-cache hash table entries: 4096 (order: 2, 16384 bytes)
Memory: 32MB 32MB = 64MB total
Memory: 58224KB available (3328K code, 338K data, 120K init)
Mount-cache hash table entries: 512
CPU: Testing write buffer coherency: ok
NET: Registered protocol family 16
ep93xx: PLL1 running at 399 MHz, PLL2 at 192 MHz
ep93xx: FCLK 199 MHz, HCLK 99 MHz, PCLK 49 MHz
SCSI subsystem initialized
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
NET: Registered protocol family 2
IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
TCP established hash table entries: 2048 (order: 1, 8192 bytes)
TCP bind hash table entries: 1024 (order: 0, 4096 bytes)
TCP: Hash tables configured (established 2048 bind 1024)
TCP reno registered
checking if image is initramfs...it isn't (no cpio magic); looks like an
initrd
Freeing initrd memory: 2855K
NetWinder Floating Point Emulator V0.97 (extended precision)
audit: initializing netlink socket (disabled)
audit(5.760:1): initialized
JFFS2 version 2.2. (NAND) (C) 2001-2006 Red Hat, Inc.
io scheduler noop registered (default)
io scheduler anticipatory registered
ep93xxfb_get_par: VGA 640x480
Console: switching to colour frame buffer device 80x30
fb0: EP93xx frame buffer at 640x480x16bpp
ep93xx_wdt: EP93XX watchdog, driver version 0.3
Serial: AMBA driver $Revision: 1.41 $
RS485 hardware flow control on 3rd serial port
apb:uart1: ttyAM0 at MMIO 0x808c0000 (irq = 52) is a AMBA
apb:uart2: ttyAM1 at MMIO 0x808d0000 (irq = 54) is a AMBA
apb:uart3: ttyAM2 at MMIO 0x808e0000 (irq = 55) is a AMBA
RAMDISK: wrong blocksize 8096, reverting to defaults
RAMDISK driver initialized: 2 RAM disks of 32768K size 1024 blocksize
loop: loaded (max 8 devices)
nbd: registered device at major 43
PPP generic driver version 2.4.2
PPP Deflate Compression module registered
PPP BSD Compression module registered
PPP MPPE Compression module registered
Uniform Multi-Platform E-IDE driver Revision: 7.00alpha2
ide: Assuming 50MHz system bus speed for PIO modes; override with idebus=
xx
Cirrus Logic EP93XX IDE initialization.
physmap platform flash device: 02000000 at 60000000
physmap-flash.0: Found 2 x16 devices at 0x0 in 32-bit bank
NOR chip too large to fit in mapping. Attempting to cope...
Intel/Sharp Extended Query Table at 0x010A
Intel/Sharp Extended Query Table at 0x010A
Intel/Sharp Extended Query Table at 0x010A
Intel/Sharp Extended Query Table at 0x010A
Intel/Sharp Extended Query Table at 0x010A
Using buffer write method
cfi_cmdset_0001: Erase suspend on write enabled
Reducing visibility of 65536KiB chip to 32768KiB
cmdlinepart partition parsing not available
RedBoot partition parsing not available
edb93xxflash: probe of edb93xxflash.0 failed with error -16
ep93xx-spi ep93xx-spi.1: SPI Controller initialized
ep93xx-usb ep93xx-usb: EP93xx OHCI
ep93xx-usb ep93xx-usb: new USB bus registered, assigned bus number 1
ep93xx-usb ep93xx-usb: irq 56, io mem 0x80020000
usb usb1: configuration #1 chosen from 1 choice
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 3 ports detected
Initializing USB Mass Storage driver...
usb 1-1: new full speed USB device using ep93xx-usb and address 2
usb 1-1: not running at top speed; connect to a high speed hub
usb 1-1: configuration #1 chosen from 1 choice
usb 1-2: new low speed USB device using ep93xx-usb and address 3
usb 1-2: configuration #1 chosen from 1 choice
scsi0 : SCSI emulation for USB Mass Storage devices
usbcore: registered new interface driver usb-storage
USB Mass Storage support registered.
usbcore: registered new interface driver hiddev
input: MLK Defender 2.4GHz Nano mouse as /class/input/input0
input,hiddev96: USB HID v1.10 Mouse [MLK Defender 2.4GHz Nano mouse] on u
sb-ep93xx-2
usbcore: registered new interface driver usbhid
drivers/usb/input/hid-core.c: v2.6:USB HID core driver
usbcore: registered new interface driver usbserial
drivers/usb/serial/usb-serial.c: USB Serial support registered for generi
c
usbcore: registered new interface driver usbserial_generic
drivers/usb/serial/usb-serial.c: USB Serial Driver core
drivers/usb/serial/usb-serial.c: USB Serial support registered for FTDI U
SB Serial Device
usbcore: registered new interface driver ftdi_sio
drivers/usb/serial/ftdi_sio.c: v1.4.3:USB FTDI Serial Converters Driver
drivers/usb/serial/usb-serial.c: USB Serial support registered for pl2303
usbcore: registered new interface driver pl2303
drivers/usb/serial/pl2303.c: Prolific PL2303 USB to serial adaptor driver
mice: PS/2 mouse device common for all mice
m41t00 0-0068: rtc core: registered m41t00 as rtc0
mmc_spi spi1.1: ASSUMING 3.2-3.4 V slot power
mmc_spi spi1.1: SD/MMC host mmc0, no DMA, no WP, no poweroff
mmc_spi spi1.1: setup unsupported mode bits 4
mmc_spi spi1.1: can't change chip-select polarity
mmc0: error -22 whilst initialising SDIO card
Registered led device: ep93xx:green
Registered led device: ep93xx:red
TCP cubic registered
NET: Registered protocol family 1
NET: Registered protocol family 17
NET: Registered protocol family 15
m41t00 0-0068: setting the system clock to 2010-07-12 09:37:42 (127892746
2)
RAMDISK: Compressed image found at block 0
VFS: Mounted root (ext2 filesystem).
Freeing init memory: 120K
scsi 0:0:0:0: Direct-Access JetFlash Transcend 32GB 8.07 PQ: 0 ANSI
: 2
init started: BusyBox v1.8.2 (2008-05-04 12:22:07 EDT)
SCSI device sda: 62750720 512-byte hdwr sectors (32128 MB)
sda: Write Protect is off
sda: assuming drive cache: write through
SCSI device sda: 62750720 512-byte hdwr sectors (32128 MB)
sda: Write Protect is off
sda: assuming drive cache: write through
sda: sda1
sd 0:0:0:0: Attached scsi removable disk sda
Please press Enter to activate this console.
Выставляю переменные окружения на Тионе
export QWS_DISPLAY=LinuxFb
export QWS_MOUSE_PROTO=IntelluMouse:/dev/input/mouse0
пробовал делать: cat /dev/input/mouse0
на экран выводится всякие каракули в темп дерганья мыши. Значить мышь как устройство он видит.
Но в приложении курсор на экране не движется.
может ли быть дело в компиляторе? Это приложение, которое я запускаю, отлично работает на тион про с сенсорным экраном. Я использую тот же компилятор, тот же исходный код. Может надо пересобрать компилятор с другими опциями для обычной мышки?
Вот код сборки компилятора:
./configure -prefix /mnt/usbflash/Qt-4.5.2/Embedded-Arm-Static-tslib -embedded arm -xplatform qws/linux-arm-g++
-D__ARM_ARCH_4T__ -depths 8,16,24 -qt-zlib -qt-libjpeg -qt-libpng -qt-freetype -little-endian -no-gfx-qvfb
-no-gfx-multiscreen -qt-gfx-linuxfb -no-webkit -no-cups -nomake examples -static -v -qt-mouse-tslib -L/mnt/usbflash/tslib/lib/
-I/mnt/usbflash/tslib/include/
Make
Sudo make install
Вот код сборки приложения:
/mnt/usbflash/Qt-4.5.2/Embedded-Arm-Static-tslib/bin/qmake ./asu3.pro -r -spec /mnt/usbflash/Qt-4.5.2/Embedded-Arm-Static-tslib/mkspecs/qws/linux-arm-g++/
make
Данная тема была разбита на 3 разных.
-
Почему вы не создали три темы, по одной на каждый вопрос?
> Вот код сборки компилятора:
Это не компилятор.
> Sudo make install
Если не хотите из-за этого переставлять систему, не делайте так при разработке.
Вы собираете Qt вручную? Почему не использовать Buildroot?
> 2) КФС постоянно затирается, при перезагрузке, на дефолтную. КФС записанна во флэш. При установке использовал эту:uramdisk_bb1.8.2.gz
Это и называется _ram_ disk
> Возможно ли как-то сохранять изменения?
Да, использовать как корень файловую систему jffs2 на /dev/mtdblock2
>3)При подключении к монитору
> Следовательно дело наверняка не в настройках
Вы меняете настройки для VGA?
http://www.zao-zeo.ru/dokuwiki/doku.php/linux#%D0%B4%D0%B8%D1%81%D0%BF%D0%BB%D0%B5%D0%B9
-
Я продолжаю дело пользователя kapa77 (вот тема тут (http://www.zao-zeo.ru/forum/index.php?topic=364.15)). Собственно и приложение написанно им, и все сборки тоже. Зачем переделывать что-то глобально? Неужели нельзя переконфигурировать qt для поддержки мыши, а не тач скрина? У меня Кубунту развернута на виртуальной машине, сделаны бэкапы, так что запороть что-то там не страшно.
-
> Зачем переделывать что-то глобально? Неужели нельзя переконфигурировать qt для поддержки мыши, а не тач скрина?
Вам нужно (а) чтобы мышь работала или чтобы (б) я сказал/разобрался почему она не работает в вашей конфигурации Qt?
а) Соберите Buildroot, или я могу выложить сборки
б) Решайте самостоятельно
> У меня Кубунту развернута на виртуальной машине, сделаны бэкапы, так что запороть что-то там не страшно.
Это уж вам решать, может вы файлы и в своей домашней директории копируете из под root. Я только говорю, что это совершенно не нужно.
-
выложите, пожалуйста, если вас не затруднит.
-
http://www.zao-zeo.ru/media/files/rootfs/ep93xx/buildroot/rootfs.arm_eabi_tion-pro2_20100822.jffs2
http://www.zao-zeo.ru/media/files/rootfs/ep93xx/buildroot/md5.sum
Есть /homt/qwt-examples
Ядро, например, это
http://www.zao-zeo.ru/media/files/linux/2.6.20/image/uImage-2.6.20.21_tion-pro2_svn889_eabi
-
загрузил в тион эти сборки. что с ними делать дальше? Не могу понять ход ваших мыслей. Там какое-нибудь приложение есть чтобы проверить работоспособность мышки?
-
нашел там /home/qwt-examples/cpuplot запустил. Мышь работает. А не могли бы вы прислать строку конфигурирования Qt? Если для вас это не сложно.
-
git clone http://zao-zeo.ru/media/files/linux/buildroot-2009.08.git
И дальше как описано в разделе "Для плат на базе EP93xx"/"Buildroot, с конфигурацией"
http://www.zao-zeo.ru/dokuwiki/doku.php/linux#различные_сборки_кфс
/home/asv/projects/ep93xx/buildroot-2009.08/build_arm/qt-embedded-linux-opensource-src-4.5.2/configure -silent -force-pkg-config -embedded arm -opensource -confirm-license -largefile -no-qt3support -depths 16 -qt-gfx-linuxfb -no-gfx-transformed -no-gfx-qvfb -no-gfx-vnc -no-gfx-multiscreen -qt-mouse-pc -no-mouse-bus -no-mouse-linuxtp -no-mouse-yopy -no-mouse-vr41xx -qt-mouse-tslib -no-mouse-qvfb -release -shared -little-endian -qt-gif -no-libmng -system-zlib -system-libjpeg -system-libpng -system-libtiff -qt-freetype -no-openssl -no-sql-sqlite -no-xmlpatterns -no-phonon -no-svg -no-webkit -no-stl -no-cups -no-nis -no-accessibility -no-separate-debug-info -prefix /usr -hostprefix /home/asv/projects/ep93xx/buildroot-2009.08/build_arm/staging_dir/usr -fast -no-rpath -nomake examples -nomake demos
-
При запуске приложения выводит:
can't resolve symbol '__register_frame_info'
Из-за чего может быть?
Покопался в инете говорят что не хватает библиотек:
-lstdc++
-lmico2.0.5
-lgmp.
Но где не хватает в тионе или на хосте не ясно?
Или все таки из-за этого:
код сборки:
./configure -prefix /mnt/usbflash/Qt-4.5.2/Embedded-Arm-Static-tslib -embedded arm -xplatform qws/linux-arm-g++
-D__ARM_ARCH_4T__ -depths 8,16,24 -qt-zlib -qt-libjpeg -qt-libpng -qt-freetype -little-endian -no-gfx-qvfb
-no-gfx-multiscreen -qt-gfx-linuxfb -no-webkit -no-cups -nomake examples -static -v -qt-mouse-tslib -L/mnt/usbflash/tslib/lib/
-I/mnt/usbflash/tslib/include/
-xplatform qws/linux-arm-g++
А ядро собиралось gcc?
-
> Но где не хватает в тионе или на хосте не ясно?
Если бы на хосте, программа бы не скомпоновалась (слинковалась).
-
> Или все таки из-за этого:
> код сборки:
Обратите внимание на Buildroot
> А ядро собиралось gcc?
Конечно
-
т.е. надо пересобрать КФС?
А что потребуется из git репозитория?
-
> т.е. надо пересобрать КФС?
Не обязательно, можете эти библиотеки (под ARM) скопировать в нужные директории на Тионе.
> А что потребуется из git репозитория?
Всё, наверное.
-
В buildRoot нет таких библиотек. До того как пересобирал ядро приложение запускалось.
Пересобрал КФС все тоже самое.
Подскажите, пожалуйста, в чем может быть проблема?
-
> До того как пересобирал ядро приложение запускалось.
> Подскажите, пожалуйста, в чем может быть проблема?
Запустите программу через strace
-
А может ли это быть из-за eabi oabi?
Вечерком попробую strace.
-
лог strace:
# strace ./AsuReis
execve("./AsuReis", ["./AsuReis"], [/* 18 vars */]) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40005000
open("/mnt/usbflash/Qt-4.5.2/Embedded-Arm-Static-tslib/lib/libts-0.0.so.0", O_RDONLY)
= -1 ENOENT (No such file or directory)
open("/lib/libts-0.0.so.0", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/lib/libts-0.0.so.0", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/lib/libts-0.0.so.0", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0755, st_size=6012, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40006000
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0x\t\0\0004\0\0\0004"..., 4096)
= 4096
mmap2(NULL, 40960, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x4000e000
mmap2(0x4000e000, 4600, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) = 0x4000e000
mmap2(0x40017000, 876, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x1) = 0x400170
00
close(3) = 0
munmap(0x40006000, 4096) = 0
open("/mnt/usbflash/Qt-4.5.2/Embedded-Arm-Static-tslib/lib/librt.so.0", O_RDONLY) = -1
ENOENT (No such file or directory)
open("/lib/librt.so.0", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0755, st_size=4752, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40006000
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0000\6\0\0004\0\0\0\210"..., 409
6) = 4096
mmap2(NULL, 36864, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40018000
mmap2(0x40018000, 3024, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) = 0x40018000
mmap2(0x40020000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0) = 0x4002000
0
close(3) = 0
munmap(0x40006000, 4096) = 0
open("/mnt/usbflash/Qt-4.5.2/Embedded-Arm-Static-tslib/lib/libdl.so.0", O_RDONLY) = -1
ENOENT (No such file or directory)
open("/lib/libdl.so.0", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0755, st_size=9048, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40006000
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0\334\7\0\0004\0\0\0\260"..., 40
96) = 4096
mmap2(NULL, 45056, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40021000
mmap2(0x40021000, 5815, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) = 0x40021000
mmap2(0x4002a000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x1) = 0x4002a
000
mmap2(0x4002b000, 4, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0)
= 0x4002b000
close(3) = 0
munmap(0x40006000, 4096) = 0
open("/mnt/usbflash/Qt-4.5.2/Embedded-Arm-Static-tslib/lib/libpthread.so.0", O_RDONLY)
= -1 ENOENT (No such file or directory)
open("/lib/libpthread.so.0", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0755, st_size=52952, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40006000
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0 C\0\0004\0\0\0h"..., 4096) = 4
096
mmap2(NULL, 110592, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x4002c000
mmap2(0x4002c000, 45132, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) = 0x4002c00
0
mmap2(0x4003f000, 6808, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0xb) = 0x4003f
000
mmap2(0x40041000, 23368, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1
, 0) = 0x40041000
close(3) = 0
munmap(0x40006000, 4096) = 0
open("/mnt/usbflash/Qt-4.5.2/Embedded-Arm-Static-tslib/lib/libstdc++.so.6", O_RDONLY)
= -1 ENOENT (No such file or directory)
open("/lib/libstdc++.so.6", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/lib/libstdc++.so.6", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/lib/libstdc++.so.6", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0755, st_size=682428, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40006000
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0\374\0\4\0004\0\0\0\204"..., 40
96) = 4096
mmap2(NULL, 737280, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40047000
mmap2(0x40047000, 661860, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) = 0x400470
00
mmap2(0x400f1000, 17520, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0xa2) = 0x400
f1000
mmap2(0x400f6000, 20472, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1
, 0) = 0x400f6000
close(3) = 0
munmap(0x40006000, 4096) = 0
open("/mnt/usbflash/Qt-4.5.2/Embedded-Arm-Static-tslib/lib/libm.so.0", O_RDONLY) = -1
ENOENT (No such file or directory)
open("/lib/libm.so.0", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0755, st_size=74480, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40006000
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0p\27\0\0004\0\0\0\230"..., 4096
) = 4096
mmap2(NULL, 110592, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x400fb000
mmap2(0x400fb000, 69428, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) = 0x400fb00
0
mmap2(0x40114000, 4100, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x11) = 0x4011
4000
close(3) = 0
munmap(0x40006000, 4096) = 0
open("/mnt/usbflash/Qt-4.5.2/Embedded-Arm-Static-tslib/lib/libgcc_s.so.1", O_RDONLY) =
-1 ENOENT (No such file or directory)
open("/lib/libgcc_s.so.1", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=44280, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40006000
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0p'\0\0004\0\0\0\20"..., 4096) =
4096
mmap2(NULL, 77824, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40116000
mmap2(0x40116000, 42492, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) = 0x4011600
0
mmap2(0x40128000, 2072, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0xa) = 0x40128
000
close(3) = 0
munmap(0x40006000, 4096) = 0
open("/mnt/usbflash/Qt-4.5.2/Embedded-Arm-Static-tslib/lib/libc.so.0", O_RDONLY) = -1
ENOENT (No such file or directory)
open("/lib/libc.so.0", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0755, st_size=342748, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40006000
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0\20\270\0\0004\0\0\0\364"..., 4
096) = 4096
mmap2(NULL, 393216, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40129000
mmap2(0x40129000, 335672, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) = 0x401290
00
mmap2(0x40183000, 5112, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x52) = 0x4018
3000
mmap2(0x40185000, 15120, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1
, 0) = 0x40185000
close(3) = 0
munmap(0x40006000, 4096) = 0
open("/lib/libdl.so.0", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0755, st_size=9048, ...}) = 0
close(3) = 0
open("/lib/libc.so.0", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0755, st_size=342748, ...}) = 0
close(3) = 0
open("/lib/libc.so.0", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0755, st_size=342748, ...}) = 0
close(3) = 0
open("/lib/libc.so.0", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0755, st_size=342748, ...}) = 0
close(3) = 0
open("/lib/libc.so.0", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0755, st_size=342748, ...}) = 0
close(3) = 0
open("/lib/libm.so.0", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0755, st_size=74480, ...}) = 0
close(3) = 0
open("/lib/libc.so.0", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0755, st_size=342748, ...}) = 0
close(3) = 0
open("/lib/libgcc_s.so.1", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=44280, ...}) = 0
close(3) = 0
open("/lib/libc.so.0", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0755, st_size=342748, ...}) = 0
close(3) = 0
open("/lib/libc.so.0", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0755, st_size=342748, ...}) = 0
close(3) = 0
stat("/lib/ld-uClibc.so.0", {st_mode=S_IFREG|0755, st_size=21200, ...}) = 0
mprotect(0x40020000, 4096, PROT_READ) = 0
mprotect(0x4002a000, 4096, PROT_READ) = 0
mprotect(0x4003f000, 4096, PROT_READ) = 0
mprotect(0x400f1000, 12288, PROT_READ) = 0
mprotect(0x40114000, 4096, PROT_READ) = 0
mprotect(0x40183000, 4096, PROT_READ) = 0
mprotect(0x4000c000, 4096, PROT_READ) = 0
ioctl(0, SNDCTL_TMR_TIMEBASE or TCGETS, {B57600 opost isig icanon echo ...}) = 0
ioctl(1, SNDCTL_TMR_TIMEBASE or TCGETS, {B57600 opost isig icanon echo ...}) = 0
getrlimit(RLIMIT_STACK, {rlim_cur=8192*1024, rlim_max=1074015004}) = 0
setrlimit(RLIMIT_STACK, {rlim_cur=2044*1024, rlim_max=1074015004}) = 0
getpid() = 333
rt_sigaction(SIGRTMIN, {0x40032988, [], 0x4000000 /* SA_??? */}, NULL, 8) = 0
rt_sigaction(SIGRT_1, {0x400328ac, [RTMIN], 0x4000000 /* SA_??? */}, NULL, 8) = 0
rt_sigaction(SIGRT_2, {0x40032224, [], 0x4000000 /* SA_??? */}, NULL, 8) = 0
rt_sigprocmask(SIG_BLOCK, [RTMIN], NULL, 8) = 0
rt_sigprocmask(SIG_UNBLOCK, [RT_1], NULL, 8) = 0
brk(0) = 0x9cc000
brk(0x9cd000) = 0x9cd000
_sysctl({{CTL_KERN, KERN_VERSION}, 2, 0xbee79590, 38, (nil), 0}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40006000
write(2, ""..., 0) = 0
write(2, "./AsuReis"..., 9./AsuReis) = 9
write(2, ": can't resolve symbol '"..., 24: can't resolve symbol ') = 24
write(2, "__register_frame_info"..., 21__register_frame_info) = 21
write(2, "'\n"..., 2'
) = 2
munmap(0x40006000, 4096) = 0
exit(1)
-
Почему /mnt/usbflash? Собирали компилятором из Buildroot?
-
Нет. А как его собрать с помощью компилятора из билдрут это ж qt?
Приложение находится на флэшке.
-
> А как его собрать с помощью компилятора из билдрут это ж qt
Buildroot сам может собрать Qt, вашу программу также собирайте компилятором полученным в Buildroot.
-
Чтобы собрать Qt, надо пропатчить buildroot этим файлом : http://www.zao-zeo.ru/media/files/rootfs/ep93xx/buildroot/obsolete/buildroot-qwt.patch (http://www.zao-zeo.ru/media/files/rootfs/ep93xx/buildroot/obsolete/buildroot-qwt.patch) ?
-
Патчить получается не надо?
Опять же надо поставить BR2_PACKAGE_QT=y? И все или еще что-то? еще не понятно как задавать опции сборки Qt?
Остается открытым вопрос как компилировать свое приложение билдрудом?
-
> Остается открытым вопрос как компилировать свое приложение билдрудом?
Если не сложно (нет configure/autoconfigure), то "Using the uClibc toolchain outside Buildroot", если сложнее, действительно нужно Buildroot'ом, то "Extending Buildroot with more software" в <buldroot>/docs/buildroot.html
-
> в <buldroot>/docs/buildroot.html
спасибо то что нужно
-
Собрал. А дальше:
sda: assuming drive cache: write through
sda: sda1
sd 0:0:0:0: Attached scsi removable disk sda
/etc/init.d/rcS: line 37: /etc/init.d/S10modprobe: Permission denied
Initializing random number generator...
Не грузится.
В чем может быть проблема?
-
Здесь была похожая проблема
http://www.zao-zeo.ru/forum/index.php?topic=440.0
-
А не подскажете Qt лучше собирать как static или как shared library в билдрут?
-
Собрал как shared library.
Скомпилировал с помощью собранного qt копирую на флэшку, запускаю с флэшки
выводит
# ./asu3 -qws
Segmentation fault
# strace ./asu3 -qws
execve("./asu3", ["./asu3", "-qws"], [/* 18 vars */]) = -1 EFAULT (Bad address)
--- SIGSEGV (Segmentation fault) @ 0 (0) ---
+++ killed by SIGSEGV +++
копирую в память выводит:
# ./asu3
-sh: ./asu3: Permission denied
# strace ./asu3
execve("./asu3", ["./asu3"], [/* 18 vars */]) = -1 EACCES (Permission denied)
write(2, "strace: exec: Permission denied\n"..., 32strace: exec: Permission denied
) = 32
exit(1) = ?
#
Такое чувство, что после копирования приложение перестает быть приложением, а становится текстовым файлом.
копирую так: cp asu3 /home/
На флэшке файловая система ext3.
-
> --- SIGSEGV (Segmentation fault) @ 0 (0) ---
Примеры пробовали собирать/запускать?
> приложение перестает быть приложением
Покажите вывод ls -l asu3
-
>Примеры пробовали собирать/запускать?
Все запустилось. Пересобрал qt, добавил там qws.
Получается для приложений необходим qws.
>Покажите вывод ls -l asu3
Да вы правы, оказывается дело с правами доступа. сделал chmod 777 asu3 все запустилось.
Спасибо большое за помощь.
-
Мышь все таки не работает. Ни в моем приложении, ни в примерах.
при сборке в разделе mouse drivers поставил =y для pc и tslib. Может еще какой-нибудь библиотеки не хватает?
Приложил на всякий случай лог strace.
мышь работает cat /dev/input/mice выводит иероглифы в такт мыши.
export QWS_MOUSE_PROTO=IntelliMouse:/dev/input/mice не помогает.
Из-за чего это может быть?
Нет ли у вас файла buildroot-2009.08/local/tion/tion/config настроенного для работы Qt?
Еще никак не могу найти тему где написано как отключить запрос логина при загрузке. Не подскажете это где?
-
> Еще никак не могу найти тему где написано как отключить запрос логина при загрузке. Не подскажете это где?
Файл /etc/inittab
ttyAM0::respawn:/sbin/getty -n -l/bin/sh -L ttyAM0 57600 vt100 # GENERIC_SERIAL
-
> Мышь все таки не работает. Ни в моем приложении, ни в примерах.
У меня мышь работает, дополнительный переменных устанавливать не приходиться, ядро
http://www.zao-zeo.ru/media/files/linux/2.6.20/image/uImage-2.6.20.21_tion-pro2_svn889_eabi
Qwt не обязателен, если вы его не используете.
> при сборке в разделе mouse drivers поставил =y для pc и tslib. Может еще какой-нибудь библиотеки не хватает?
Всё так, для мыши tslib не обязателен, но и не мешает.
> Нет ли у вас файла buildroot-2009.08/local/tion/tion/config настроенного для работы Qt?
Во вложении
-
Вот с этой КФС rootfs.arm_eabi_tion-pro2_20100822.jffs2 и с моим ядром все работает. И приложеницо запустилось, и мышь работает.
А конфига к этой сборке у вас случайно не осталось?
Понять не могу, что с моей сборкой не так.
-
> А конфига к этой сборке
Или тот что по умолчанию, или его уже нет.
> Понять не могу, что с моей сборкой не так.
Сравнивайте с тем, что вложен 03 октября 2010.
-
по умолчанию без qt. обидно.
-
В http://www.zao-zeo.ru/forum/index.php?action=dlattach;topic=419.0;attach=63 Qt есть.
-
В http://www.zao-zeo.ru/forum/index.php?action=dlattach;topic=419.0;attach=63 Qt есть.
Я знаю, но там после установки времени при загрузке ошибок 15 идет. Что-то типа не может записать по адресу. Позже точный листинг приведу. Да и мышь насколько я помню тоже не работает.
Еще вопрос: допустим я делаю git clone http://zao-zeo.ru/media/files/linux/buildroot-2009.08.git в папку /home/buildroot1/ затем собираю там КФС по инструкции "Для плат на базе EP93xx", после чего хочу пересобрать КФС но в другой дирректории например /home/buildroot2/ делаю git clone http://zao-zeo.ru/media/files/linux/buildroot-2009.08.git затем опять по инструкции "Для плат на базе EP93xx" и когда ввожу make BOARD=tion выдает много строчек и последняя package/mtd/mtd-utils/mtd.mk:106: *** multiple target patterns. Stop.
Неужели нет возможности делать несколько различных сборок КФС на одной ОС? Или я что-то не так делаю?