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

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

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

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

Сообщение pavelk » 29 янв 2014, 16:31

sharptop писал(а):
pavelk писал(а):
Gol писал(а):Эт я только в proftpd "-p" пропустил, тож ща заметил когда собирал, в остальных норм. Закоммитил фикс.

А с этими:
Код: Выделить всё
stress.texi:68: @itemx must follow @item
stress.texi:87: @itemx must follow @item
stress.texi:102: @itemx must follow @item
stress.texi:105: @itemx must follow @item
stress.texi:120: @itemx must follow @item
stress.texi:123: @itemx must follow @item

ошибками что?

если я правильно понял, то эти ошибки идут на версии perl > 5.18.0 (у меня 5.18.2). У меня вдобавок к ним была еще ошибка при сборке wget.
Код: Выделить всё
wget.pod around line 2105: Expected text after =item, not a number
wget.pod around line 2110: Expected text after =item, not a number
wget.pod around line 2116: Expected text after =item, not a number
wget.pod around line 2121: Expected text after =item, not a number
wget.pod around line 2126: Expected text after =item, not a number
wget.pod around line 2131: Expected text after =item, not a number
wget.pod around line 2136: Expected text after =item, not a number
wget.pod around line 2141: Expected text after =item, not a number

Лечил, как указано в ссылке - http://www.sourcemage.org/issues/546


Я лечил как посоветовали на форуме переименованием itemx в item

perl -v
v5.14.2
pavelk
 
Сообщения: 30
Зарегистрирован: 27 дек 2013, 23:42

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

Сообщение sharptop » 05 фев 2014, 05:18

Замечание насчет версии perl>5.18.0 было относительно ошибок, проявившихся при сборке wget - ведь кроме меня у всех остальных там проблем не было. А лечилось в обоих случаях так же - заменой itemx на item
sharptop
 
Сообщения: 2
Зарегистрирован: 13 сен 2013, 14:12

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

Сообщение tigor » 21 мар 2014, 12:16

Обнаружил такой момент. Была сборка SDK почти месячной давности, захотел обновить, чтобы собрать с опцией V2R_GPIOEVENT.
Выполнил make clean, затем FULL_UPDATE.sh, написал что все обновлено. Собрал и записал на флешку. После запуска обнаружил что ничего не изменилось.
Обнаружил, что в kernel/drivers/v2r/Kconfig нет ничего о V2R_GPIOEVENT. В каталоге kernel выполняю git pull, говорит что "Already up-to-date.".

Помогло только
Код: Выделить всё
git reset --hard
git pull

После этого все изменения загрузились. Так же обновил все каталоги.

Что я делал не правильно в первом случае?
Аватара пользователя
tigor
 
Сообщения: 27
Зарегистрирован: 13 фев 2014, 11:17
Откуда: Санкт-Петербург

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

Сообщение tigor » 21 мар 2014, 21:23

Собрал свежую версию SDK с дефолтными настройками.
Wifi настроен в режиме клиента сети.
Система стартует, загорается зеленый светодиод, потом загорается синий, зеленый начинает маргать, затем загорается красный (сеть стартовала). Благополучно подключаюсь к v2r по ssh.
Проходит около минуты и все светодиоды гаснут, v2r перезагружается и все с начала.
В режиме точки доступа таже история.
Аватара пользователя
tigor
 
Сообщения: 27
Зарегистрирован: 13 фев 2014, 11:17
Откуда: Санкт-Петербург

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

Сообщение eagafonov » 22 мар 2014, 01:15

tigor писал(а):Помогло только
Код: Выделить всё
git reset --hard
git pull

После этого все изменения загрузились. Так же обновил все каталоги.

Что я делал не правильно в первом случае?


FULL_UPDATE.sh делает git pull.

У вас были локальные изменения. В этом случае git pull только скачивает коммиты с вешнего репозитория, но не обновляет текущие файлы.
git reset --hard как раз откатывает локальные изменения, так что git pull успешно выполняет merge.

Локальные изменения появляются во время построения ядра, так как в git закоммитили в своё время генерируемые файлы.
Я делал несколько коммитов, что бы это исправить. Вроде этого не должно быть теперь.
Аватара пользователя
eagafonov
 
Сообщения: 175
Зарегистрирован: 18 сен 2013, 23:39
Откуда: Нижненовгородск

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

Сообщение tigor » 22 мар 2014, 11:55

eagafonov писал(а):FULL_UPDATE.sh делает git pull.

У вас были локальные изменения. В этом случае git pull только скачивает коммиты с вешнего репозитория, но не обновляет текущие файлы.
git reset --hard как раз откатывает локальные изменения, так что git pull успешно выполняет merge.

Локальные изменения появляются во время построения ядра, так как в git закоммитили в своё время генерируемые файлы.
Я делал несколько коммитов, что бы это исправить. Вроде этого не должно быть теперь.


Я знаю как работает GIT, просто на мой взгляд если есть скрипты типо FULL_UPDATE.sh, то они должены освободить пользователей от необходимости использовать git, например можно добавить 2 скрипта, FULL_UPDATE_RESET.sh и FULL_UPDATE_COMMIT.sh, ну или сделать так, чтобы FULL_UPDATE.sh коммитил в локальный репозиторий изменения и делал git pull.
Аватара пользователя
tigor
 
Сообщения: 27
Зарегистрирован: 13 фев 2014, 11:17
Откуда: Санкт-Петербург

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

Сообщение grizlik » 27 мар 2014, 10:30

tigor писал(а):Проходит около минуты и все светодиоды гаснут, v2r перезагружается и все с начала.
В режиме точки доступа таже история.

Это, скорее всего, срабатывает watchdog timer, который настроен на проверку доступности конкретного ip-адреса на локальном интерфейсе (вроде 192.168.1.2). Запускается, видимо, с помощью чего-то вроде /etc/init.d/S90watchdog и /etc/virt2real/watchdog.sh.
grizlik
 
Сообщения: 12
Зарегистрирован: 07 сен 2013, 11:27

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

Сообщение Gol » 31 мар 2014, 19:26

grizlik писал(а):
tigor писал(а):Проходит около минуты и все светодиоды гаснут, v2r перезагружается и все с начала.
В режиме точки доступа таже история.

Это, скорее всего, срабатывает watchdog timer, который настроен на проверку доступности конкретного ip-адреса на локальном интерфейсе (вроде 192.168.1.2). Запускается, видимо, с помощью чего-то вроде /etc/init.d/S90watchdog и /etc/virt2real/watchdog.sh.

Да, вочдог халтурит. Он должен за интерфейсом бдить и в случае пропадания пинга - ребутить. В сегодняшней прошивке ребут я убрал, просто пытается интерфейс wlan0 поднять. Настройки пока ручками, в /etc/virt2real/watchdog/, в админку добавить ещё не успел. Файл maxpingerrors если 0 - не ребутить, иначе - кол-во ошибок пинга после которого уходить в ребут. Интерфейс для наблюдения там же задаётся. Пробная версия вочдога, но пока вроде отлично работает, главное интерфейс правильно указать.

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

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

Сообщение EXpoison » 01 апр 2014, 10:44

Возникла проблема.

Собрал свежую версию SDK, исправил только частоту SPI на 5.58Мгц. Через 50 - 60 мин передача видео через SPI зависает.

Для передачи использую следующий скрипт:
Код: Выделить всё
gst-launch v4l2src always-copy=false chain-ipipe=true ! video/x-raw-yuv,format='(fourcc)'NV12, width=640, height=480, framerate='(fraction)'30/1 ! dmaiaccel ! dmaiperf print-arm-load=true ! dmaienc_h264 ddrbuf=true rcalgo=0 bytestream=true  encodingpreset=2 ratecontrol=2 intraframeinterval=5 idrinterval=50 targetbitrate=300000 ! mux. alsasrc actual_buffer_time = 10000 ! audio/x-raw-int , rate=32000 , depth=16 , channels=1 ! dmaienc_aac outputBufferSize=131072 bitrate=32000 ! mux. ffmux_mpegts name=mux ! filesink append=true location = /dev/spidev0.1


Перезапустить передачу не получается, gstreamer выдаёт сообщение что alsasrc и v4l2src заняты.
SPI тоже зависает и данные не передаёт.
Помогает только перезагрузка.
На старой версии SDK(2 месяца назад) эта проблема не возникала.
С чем это может быть связано?
EXpoison
 
Сообщения: 38
Зарегистрирован: 11 окт 2013, 14:51

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

Сообщение CrazyCoder » 29 май 2014, 18:35

Нашел неприятный баг при сборке на свежих версиях Ubuntu (14.04). Кроме уже упомянутого Perl 5.18 и wget, есть более серьезная проблема.
ldconfig из свежих версий libc не генерирует кэш для ARM библиотек.

Если запустить с ключиком -v, то будут ошибки вроде такой:

Код: Выделить всё
/sbin/ldconfig: /usr/lib/mysql/libmysqlclient.so.16.0.0 is for unknown machine 40.


Это приводит к созданию пустого /etc/ldconfig.so.cache файла в таргете, после чего веб интерфейс не доступен из-за того что PHP не запускается (не может найти libmysqlclient.so.16.0.0).

codersourcery тулчейн не имеет своей версии ldconfig для хоста, поэтому используется системный.

Проблема распространенная, гуглится (http://patchwork.ozlabs.org/patch/255486/).

В качестве решения нужно взять ldconfig из Ubuntu 12.04: http://packages.ubuntu.com/precise/amd6 ... n/download (64-бит версия, если собираете на 32-бит системе, берите 32-бит версию: http://packages.ubuntu.com/precise/i386 ... n/download).

Распакуйте ldconfig.real из .deb файла, поместисте его с новым именем в SDK/codesourcery/arm-2013.05/bin/arm-none-linux-gnueabi-ldconfig.
Makefile должен найти эту версию и использовать ее вместо системной, которая генерит пустой кэш.

Починить установку на карточке можно командой:
Код: Выделить всё
./ldconfig.real -r /путь/к/rootfs


Надеюсь, что кому-то это сохранит пару часов времени.
Аватара пользователя
CrazyCoder
 
Сообщения: 4
Зарегистрирован: 25 май 2014, 02:45

Пред.След.

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

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

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

cron