Управляем чем угодно откуда угодно

Сборка SDK, вопросы и баги

Обсуждение линуксовой части и софта на борту виртурилки

Re: Сборка SDK, вопросы и баги

Сообщение CrazyCoder » 30 май 2014, 03:59

Кто-то успешно делал из самосборной прошивки HD-прошивку?

Я сравнил каталоги /etc в официальной и в том что собралось, вроде как существенная разница только в запуске /opt/hd_final.sh из autostart.sh.

Запускаю, в h264.sh разрешение сменил на 1280x720, трансляция на комп не приходит. В SD режиме все работает. На официальной HD прошивке HD трансляция тоже работает.

Есть какае-то еще различия? Расскажите, как сделать HD?
Аватара пользователя
CrazyCoder
 
Сообщения: 4
Зарегистрирован: 25 май 2014, 02:45

Re: Сборка SDK, вопросы и баги

Сообщение Gol » 18 июн 2014, 15:42

CrazyCoder писал(а):Кто-то успешно делал из самосборной прошивки HD-прошивку?

Я сравнил каталоги /etc в официальной и в том что собралось, вроде как существенная разница только в запуске /opt/hd_final.sh из autostart.sh.

Запускаю, в h264.sh разрешение сменил на 1280x720, трансляция на комп не приходит. В SD режиме все работает. На официальной HD прошивке HD трансляция тоже работает.

Есть какае-то еще различия? Расскажите, как сделать HD?

Для HD надо в конфиге ядра отключить пункт CONFIG_VIDEO_YCBCR. И в драйвере камеры kernel/drivers/media/i2c/ov2643_v2r.c поменять захардкоженные

Код: Выделить всё
#define OV2643_IMAGE_WIDTH    640
#define OV2643_IMAGE_HEIGHT   480

на

Код: Выделить всё
#define OV2643_IMAGE_WIDTH      1280
#define OV2643_IMAGE_HEIGHT     720


Ну и при запуске системы надо регистры установить, в сегодняшней прошивке это делает скрипт S25cameramode в автозапуске
Аватара пользователя
Gol
 
Сообщения: 507
Зарегистрирован: 17 фев 2012, 01:44
Откуда: Тула-Свободный-Щёкино-Тула-Москва

Re: Сборка SDK, вопросы и баги

Сообщение mdmitry » 11 июл 2014, 21:12

Здравствуйте!
Пытаюсь с нуля собрать SDK. Сборка рушится при создании fs. В начале июня проблем не было со сборкой. Система SMP Debian 3.2.60-1+deb7u1 i686 GNU/Linux. Явно не может скачать пакеты и в довершение
CXX(target) Release/obj.target/serialport/src/serialport.o
arm-none-linux-gnueabi-g++: error: unrecognized command line option '-m32'

Каковы советы по сборке?
Спасибо.
Аватара пользователя
mdmitry
 
Сообщения: 1
Зарегистрирован: 11 июл 2014, 20:40

Re: Сборка SDK, вопросы и баги

Сообщение orangeudav » 06 авг 2014, 13:28

Nginx кстати ломает сборку SDK
http://goo.gl/4chnCb
Код: Выделить всё
>>> nginx 1.6.0 Configuring
(cd /home/orangeudav/virt2real-sdk/fs/output/build/nginx-1.6.0;  rm -rf config.cache; AR="/home/orangeudav/virt2real-sdk/fs/output/host/usr/bin/arm-none-linux-gnueabi-ar" CC="/home/orangeudav/virt2real-sdk/fs/output/host/usr/bin/arm-none-linux-gnueabi-gcc" CPP="/home/orangeudav/virt2real-sdk/fs/output/host/usr/bin/arm-none-linux-gnueabi-cpp" RANLIB="/home/orangeudav/virt2real-sdk/fs/output/host/usr/bin/arm-none-linux-gnueabi-ranlib" CFLAGS="-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -pipe -Os -g1" CPPFLAGS="-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -pipe -Os -g1" CXXFLAGS="-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -pipe -Os -g1" LDFLAGS="" PKG_CONFIG="/home/orangeudav/virt2real-sdk/fs/output/host/usr/bin/pkg-config" STAGING_DIR="/home/orangeudav/virt2real-sdk/fs/output/host/usr/arm-buildroot-linux-gnueabi/sysroot" ./configure --prefix=/usr --sbin-path=/usr/sbin/nginx --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --http-client-body-temp-path=/tmp/nginx/client-body --http-proxy-temp-path=/tmp/nginx/proxy --http-fastcgi-temp-path=/tmp/nginx/fastcgi --http-uwsgi-temp-path=/tmp/nginx/uwsgi --http-scgi-temp-path=/tmp/nginx/scgi --pid-path=/var/run/nginx.pid --lock-path=/var/lock/ngnix.lock --user=nginx --group=nginx --crossbuild=cross-linux-32 --with-cc="/home/orangeudav/virt2real-sdk/fs/output/host/usr/bin/arm-none-linux-gnueabi-gcc" --with-cpp="/home/orangeudav/virt2real-sdk/fs/output/host/usr/bin/arm-none-linux-gnueabi-gcc" --with-cc-opt="-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -pipe -Os -g1" --with-ipv6 --with-file-aio --add-module=/home/orangeudav/virt2real-sdk/fs/output/build/nginx-1.6.0/rtmp )
building for cross-linux-32
checking for C compiler ... found
 + using GNU C compiler
./configure: 161: auto/cc/conf: [[: not found
checking for gcc builtin atomic operations (cross compilation, can't run) ... found
./configure: 186: auto/cc/conf: [[: not found
checking for C99 variadic macros (cross compilation, can't run) ... found
./configure: 206: auto/cc/conf: [[: not found
checking for gcc variadic macros (cross compilation, can't run) ... found
checking for unistd.h ... found
checking for inttypes.h ... found
checking for limits.h ... found
checking for sys/filio.h ... not found
checking for sys/param.h ... found
checking for sys/mount.h ... found
checking for sys/statvfs.h ... found
checking for crypt.h ... found
checking for cross-linux-32 specific features
./configure: 51: auto/os/linux: [[: not found
checking for epoll (cross compilation, can't run) ... found
checking for EPOLLRDHUP ... found
checking for O_PATH ... found
./configure: 114: auto/os/linux: [[: not found
checking for sendfile() (cross compilation, can't run) ... found
./configure: 141: auto/os/linux: [[: not found
checking for sendfile64() (cross compilation, can't run) ... found
checking for sys/prctl.h ... found
./configure: 165: auto/os/linux: [[: not found
checking for prctl(PR_SET_DUMPABLE) (cross compilation, can't run) ... found
checking for sched_setaffinity() ... found
checking for crypt_r() ... found
checking for sys/vfs.h ... found
checking for poll() ... found
checking for /dev/poll ... not found
checking for kqueue ... not found
checking for crypt() ... not found
checking for crypt() in libcrypt ... found
checking for F_READAHEAD ... not found
checking for posix_fadvise() ... found
checking for O_DIRECT ... found
checking for F_NOCACHE ... not found
checking for directio() ... not found
checking for statfs() ... found
checking for statvfs() ... found
checking for dlopen() ... not found
checking for dlopen() in libdl ... found
checking for sched_yield() ... found
checking for SO_SETFIB ... not found
checking for SO_ACCEPTFILTER ... not found
checking for TCP_DEFER_ACCEPT ... found
checking for TCP_KEEPIDLE ... found
checking for TCP_FASTOPEN ... not found
checking for TCP_INFO ... found
checking for accept4() ... found
checking for kqueue AIO support ... not found
checking for Linux AIO support ... found
checking for int size ..../configure: 17: auto/types/sizeof: [[: not found
./configure: 49: auto/types/sizeof: [[: not found
./configure: 65: auto/types/sizeof: [[: not found

./configure: error: can not detect int size
cat: objs/autotest.c: No such file or directory
make[1]: *** [/home/orangeudav/virt2real-sdk/fs/output/build/nginx-1.6.0/.stamp_configured] Error 1
make[1]: Leaving directory `/home/orangeudav/virt2real-sdk/fs'
make: *** [fsbuild] Error 2
orangeudav
 
Сообщения: 152
Зарегистрирован: 04 сен 2013, 15:35

Re: Сборка SDK, вопросы и баги

Сообщение vvvv » 18 авг 2014, 00:59

@mdmitry: у меня возникала ошибка, связанная с директорией fs. вылечилось ее полным удалением и восстановлением через make getfs

@orangeudav: проверьте, что /bin/sh действительно указывает на /bin/bash
vvvv
 
Сообщения: 3
Зарегистрирован: 01 фев 2014, 12:32

Re: Сборка SDK, вопросы и баги

Сообщение andy » 21 авг 2014, 23:37

Есть ли инструкция по сборке последней версии SDK?

Пытаюсь выполнить шаги, указанные на страничке wiki Установка Virt2real SDK:
http://wiki.virt2real.ru/wiki/%D0%A3%D1%81%D1%82%D0%B0%D0%BD%D0%BE%D0%B2%D0%BA%D0%B0_Virt2real_SDK.

Сборка под Opensuse 13.1 натыкается на кучу фатальных ошибок.
Не работает opkg-cl (не может распаковать gzip архивы)
Возможно из-за этого валится сборка кучи пакетов.
В итоге натыкаемся на команду apt-get install, что для Opensuse нонсенс.
предыдущая версия SDK требовала лишь подрихтовать сборку пакета wget.

Под Ubuntu 14.04 тоже всё печально.
после команды make build натыкаемся на пресловутую команду
apt-get install
в скрипте
<virt2real-sdk>/fs/package/multimedia/psplash/psplash.mk
строка 14.

ну и wget,как обычно,подпилить надо.

Подскажите, теперь сборка SDK возможна только под рутом?
andy
 
Сообщения: 1
Зарегистрирован: 21 авг 2014, 21:41

Re: Сборка SDK, вопросы и баги

Сообщение akril » 22 сен 2014, 10:17

Gol писал(а):
CrazyCoder писал(а):Кто-то успешно делал из самосборной прошивки HD-прошивку?

Я сравнил каталоги /etc в официальной и в том что собралось, вроде как существенная разница только в запуске /opt/hd_final.sh из autostart.sh.

Запускаю, в h264.sh разрешение сменил на 1280x720, трансляция на комп не приходит. В SD режиме все работает. На официальной HD прошивке HD трансляция тоже работает.

Есть какае-то еще различия? Расскажите, как сделать HD?

Для HD надо в конфиге ядра отключить пункт CONFIG_VIDEO_YCBCR. И в драйвере камеры kernel/drivers/media/i2c/ov2643_v2r.c поменять захардкоженные

Код: Выделить всё
#define OV2643_IMAGE_WIDTH    640
#define OV2643_IMAGE_HEIGHT   480

на

Код: Выделить всё
#define OV2643_IMAGE_WIDTH      1280
#define OV2643_IMAGE_HEIGHT     720


Ну и при запуске системы надо регистры установить, в сегодняшней прошивке это делает скрипт S25cameramode в автозапуске


В результате выполнения всего вышеперечисленного получаю прошивку с искаженной цветопередачей, в которой синяя и желтая компоненты поменяны местами. ЧЯНД?
akril
 
Сообщения: 23
Зарегистрирован: 24 апр 2014, 14:50
Откуда: Россия, Воронеж

Re: Сборка SDK, вопросы и баги

Сообщение hi-Z » 08 апр 2015, 14:39

При сборке SDK есть следующие ошибки:

Пробывал собирать по инструкции:
http://wiki.virt2real.ru/wiki/%D0%A3%D1 ... t2real_SDK

SDK брался с github (дата: 2015-03-26)

Пробывал устанавливать на следующие версии систем:
Ubuntu-10.04 LTS
Ubuntu-12.04 LTS
Ubuntu-14.04 LTS
Debian-7.8.0
Все версии i386, ставились на VirtualBox под Win7.

SDK устанавливал в домашнем каталоге под пользовательскими правами.

1. Первая неприятность это то, что в инструкции заявлено,
что SDK ставится на Ubuntu-10.04 без "напильника" :(

Это не так, под Ubuntu-10.04 методом apt-get install не устанавливаются:
git и u-boot-tools (так как в Ubuntu-10.04 релизе их нет).
Git поставил с исходников(при этом надо доставить несколько пакетов, чтоб он собрался),
а u-boot-tools брал с Ubuntu-12.04 в виде .deb пакета.

Еще необходимо "освежить" версию grep:
В Ubuntu-10.04 - grep v2.5.4 при сборке файловой системы(make fsbuild) - возникает фатальная ошибка(при сборке пакетов):
Error: Package name contains illegal characters, (other than [a-z0-9.+-])
заменив на grep v2.10 из Ubuntu-12.04(брать .deb пакет) фатальная ошибка исчезает и сборка начинает работать,
но ошибку grep все-равно выдает:
grep: Invalid range end
при каждой сборке пакета
(Это касается всех вышеперечисленных версий систем)

2. Ошибки при make driversbuild(все системы)

а.) Главная непонятка с драйвером rtl8192su - у него Makefile
"заточен" под PC архитектуру, т.е используется компилятор gcc.
===========
gcc: error: unrecognized command line option ‘-mlittle-endian’
gcc: error: unrecognized command line option ‘-mapcs’
gcc: error: unrecognized command line option ‘-mno-sched-prolog’
gcc: error: unrecognized argument in option ‘-mabi=aapcs-linux’
gcc: note: valid arguments to ‘-mabi=’ are: ms sysv
gcc: error: unrecognized command line option ‘-mno-thumb-interwork’
===========
правда в каталоге драйвера есть скрипт для компиляции под ARM, но он не вызывается при make driversbuild.

Возможно драйвер rtl8192su и не нужен(в виду того что есть похожий rtl8192сu) и остался как старое наследие.
Что скажет автор?

б.) не фатальные ошибки:
===========
cp -f /home/virt2real-sdk/drivers/rt5572/os/linux/rt5572sta.ko /tftpboot
cp: cannot create regular file `/tftpboot': Permission denied
make[1]: *** [LINUX] Error 1
===========
Вообщем, хорошо-бы это выкинуть из Makefile, в будущих релизах.


3. Ошибки при make fsbuild (все системы)

а.) Главная ошибка при сборке пакета nodejs-0.10.21.
При сборке nodejs-0.10.21 много ошибок, есть log:
/home/virt2real-sdk/fs/output/xpackage/nodejs-0.10.21/usr/lib/npm-debug.log
что с ним делать и как чинить не знаю :)
Кроме этого лог файла во время компиляции выдается куча ошибок, например:
===========
/home/virt2real-sdk/fs/output/build/nodejs-0.10.21/src/node.h:112:6: note: template argument deduction/substitution failed:
../src/i2c.cc:288:40: note: cannot convert 'Read' (type 'void(int)') to type 'v8::InvocationCallback {aka v8::Handle<v8::Value> (*)(const v8::Arguments&)}'
../src/i2c.cc:289:48: error: no matching function for call to 'SetMethod(v8::Handle<v8::Object>&, const char [9], void (&)(int))'
../src/i2c.cc:289:48: note: candidate is:
In file included from ../src/i2c.cc:1:0:
===========
вообщем такого много.(логи готов предоставить, дайте знать если надо)

б.) Еще неприятность при:
psplash afd4e228c606a9998feae44a3fed4474803240b7 Building
где-то прописана принудительная установка пакета в систему(даже если он уже установлен):
sudo apt-get install libgtk2.0-dev -y
Хорошо-бы это убрать при сборке, а необходимость установки libgtk2.0-dev,
прописать(добавить) в начальной инструкции по подготовке системы для SDK.

4. Множество других ошибок
Не критических, как мне кажется, но возможно, от которых в последствии могут быть проблемы(segmentation fault и.т.п.)
например:
===========
checking for dlsym in -ldl... yes
/home/virt2real-sdk/fs/output/host/usr/arm-buildroot-linux-gnueabi/sysroot/usr/lib/crt1.o: In function `_start'::(.text+0x34): undefined reference to `main'
collect2: error: ld returned 1 exit status
===========
Статистика появления "error:" при make fsbuild - 111 раз.

5. Есть ли опция создания образа путем формирования файла sdcard.img на hdd ,
без использования физического устройства SD карточки, возможно ли ее добавить?

Проблема в том, что под VirtualBox кардридеры работают не так как на "живой машине",
отсюда проблемы при make install карточка правильно не форматируется.

Спасибо.
hi-Z
 
Сообщения: 1
Зарегистрирован: 08 апр 2015, 14:19

Re: Сборка SDK, вопросы и баги

Сообщение Serg » 01 авг 2015, 22:35

Понадобилось собрать ядро hd, но с частотой звука 8кГц. Загружаю ядро hd, забираю /proc/config.gz и использую его как конфиг. Собираю ядро (вообще ничего не меняя), загружаюсь с него и получаю ошибку

CMEM Error: init: Failed to open /dev/cmem: 'No such file or directory'
CMEM Error: init: Failed to open /dev/cmem: 'No such file or directory'
CMEM Error: CMEM file descriptor -1 (failed 'open()'), ensure CMEMK kernel module cmemk.ko has been installed with 'insmod'Setting pipeline to PAUSED ..

Ясно, что модуль cmemk не загрузился. В принципе даже понятно как это победить. Но почему такое происходит? Ведь ядро собрано с теми же параметрами, что и оригинальное hd.
Serg
 
Сообщения: 121
Зарегистрирован: 07 сен 2013, 23:55

Re: Сборка SDK, вопросы и баги

Сообщение Serg » 05 авг 2015, 21:47

Gol писал(а):Для HD надо в конфиге ядра отключить пункт CONFIG_VIDEO_YCBCR. И в драйвере камеры kernel/drivers/media/i2c/ov2643_v2r.c поменять захардкоженные

Код: Выделить всё
#define OV2643_IMAGE_WIDTH    640
#define OV2643_IMAGE_HEIGHT   480

на

Код: Выделить всё
#define OV2643_IMAGE_WIDTH      1280
#define OV2643_IMAGE_HEIGHT     720


Ну и при запуске системы надо регистры установить, в сегодняшней прошивке это делает скрипт S25cameramode в автозапуске


Загружаемся с ядром hd, идем в /proc/config.gz и видим там
CONFIG_VIDEO_YCBCR=y

Что-то поменялось? Как все таки собрать рабочее ядро с HD?
Serg
 
Сообщения: 121
Зарегистрирован: 07 сен 2013, 23:55

Пред.След.

Вернуться в Софт на виртурилке - SDK, Linux, Github, программирование (C/C++ и др.)

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1

cron