Перейти к содержанию

Навигация

Сборка образов прошивки: различия между версиями

Привёл в порядок скрипт автоматического создания FIT-образа
м
(Привёл в порядок скрипт автоматического создания FIT-образа)
Строка 44: Строка 44:
Про идеологию разделов контроллера можно прочитать на странице [[WB_Firmware_Update_Details | Обновление прошивки, информация для разработчиков]].
Про идеологию разделов контроллера можно прочитать на странице [[WB_Firmware_Update_Details | Обновление прошивки, информация для разработчиков]].
==Автоматическая сборка==
==Автоматическая сборка==
Готовим файл с командами:
Готовим файл с командами. Для Wiren Board 6 версии до 6.7 задаём переменную <code>BOARD=6x</code>, от 6.7 и выше - <code>BOARD=67</code>.
 
'''Обратите внимание''': если корневая ФС была отредактирована, нужно удалить строки в скрипте, отвечающие за удаление старой и создание новой корневой ФС
(отмечены комментарием в скрипте):
 
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
$ cat << EOFcommand > tmp.sh
$ BOARD=67; cat << EOFcommand > tmp.sh
#!/bin/bash
#!/bin/bash
apt-get update
apt-get update
apt-get install -y kpartx zip device-tree-compiler u-boot-tools=2016.11+dfsg1-4 libfdt1 binutils
apt-get install -y kpartx zip device-tree-compiler u-boot-tools=2016.11+dfsg1-4 libfdt1 binutils
mount -t devtmpfs none /dev
mount -t devtmpfs none /dev
#echo "Remove exist rootfs for re-create (if need)"
export ROOTFS=./output/rootfs_wb${BOARD}
#rm -rf /rootfs/$WBDEV_TARGET
 
#rm -rf ./output/rootfs_wb6x
# нужно удалить эти 3 строки, если rootfs уже была создана ранее и изменена,
export ROOTFS=./output/rootfs_wb6x
# иначе она будет удалена и создана заново!
echo "Create new clean rootfs"
echo "Create new clean rootfs"  
rm -rf $ROOTFS
rm -rf \$ROOTFS
/root/rootfs/create_rootfs.sh 6x
/root/rootfs/create_rootfs.sh ${BOARD}
 
echo "Create .fit image"
echo "Create .fit image"
./image/create_images.sh 6x
./image/create_images.sh ${BOARD}
echo "correct rights"
echo "fix permissions"
chmod a+rw -R ./output/images/
chmod a+rw -R ./output/images/
rm tmp.sh
rm tmp.sh
Строка 67: Строка 72:
</syntaxhighlight>
</syntaxhighlight>


Запускаем скрипт в контейнере, при этом передаем название целевой платформы:
Запускаем скрипт в контейнере, при этом передаем название целевой платформы (<code>wb6</code> для Wiren Board 6 всех версий):
 
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
$ WBDEV_TARGET=wb6 ./wbdev root bash ./tmp.sh
$ WBDEV_TARGET=wb6 ./wbdev root bash ./tmp.sh
Строка 73: Строка 79:


<blockquote>'''Важно:''' Изменения внутри контейнера не сохранятся </blockquote>
<blockquote>'''Важно:''' Изменения внутри контейнера не сохранятся </blockquote>
После завершения — «корневая» файловая система остается в каталоге <code>./output/rootfs_wb6x</code> и доступна для следующего использования. Можно изменять и дополнять в «ручном» режиме.
После завершения — «корневая» файловая система остается в каталоге <code>./output/rootfs_wb6x</code> и доступна для следующего использования. Можно изменять и дополнять в «ручном» режиме.
Готовый для загрузки в контроллер образ — в <code>./output/images/YYYYMMDDHHMM</code>
Готовый для загрузки в контроллер образ — в <code>./output/images/YYYYMMDDHHMM</code>
wb_editors
154

правки