Jump to content

    

Компиляция Linux для Variscite VAR-SoM-AM33

Компилирую по инструкции: http://variwiki.com/index.php?title=VAR-SO...o_Krogoth_Build

Всё хорошо компилируется, но долго - 3 часа.

Потом хочу поменять разрешение экрана.

Для этого надо исправить файл ~/yocto_varsomam33/tisdk/build/arago-tmp-external-linaro-toolchain/work-shared/varsomam33/kernel-source/arch/arm/boot/dts/var-som-am33.dts

После компиляции этот файл должен скомпилироваться в ~/yocto_varsomam33/tisdk/build/arago-tmp-external-linaro-toolchain/deploy/images/varsomam33/zImage-var-som-am33.dtb

Запускаю команду MACHINE=varsomam33 bitbake tisdk-rootfs-image

После этой команды dtb-файл не меняется.

Если удалить dtb-файл, то он снова не появляется.

Рядом с dtb-файлом лежит файл README_DONT_DELETE_FILES_IN_THIS_DIRECTORY.txt

В нём написано следующее:

Files in the deploy directory will not be re-created automatically if you

delete them. If you do delete a file, you will need to run:

 

bitbake -c clean TARGET

bitbake TARGET

 

where TARGET is the name of the appropriate package or target e.g.

"virtual/kernel" for the kernel, an image, etc.

Но эти команды не работают.

Пробовал запускать

bitbake -c clean tisdk-rootfs-image

Выдаётся ошибка

ERROR: Nothing PROVIDES 'tisdk-rootfs-image'

ERROR: tisdk-rootfs-image was skipped: incompatible with machine arago (not in COMPATIBLE_MACHINE)

Пробую по-другому:

MACHINE=varsomam33 bitbake -c clean tisdk-rootfs-image

MACHINE=varsomam33 bitbake tisdk-rootfs-image

Это проходит без ошибок, но dtb-файл не появляется.

 

Как получить вновь скомпилированный dtb-файл?

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

 

Нашёл один вариант.

Удалить полностью папку ~/yocto_varsomam33/

Пройти по шагам с самого начала по инструкции http://variwiki.com/index.php?title=VAR-SO...o_Krogoth_Build

После команды MACHINE=varsomam33 bitbake tisdk-rootfs-image примерно через три минуты появляется dts-файл. Его надо быстренько подредактировать.

Ещё через час примерно появляется уже скомпилированный dtb-файл.

Но каждый раз тратить на это три часа довольно утомительно.

 

Share this post


Link to post
Share on other sites
Как получить вновь скомпилированный dtb-файл?

такое пробовали (отсюда https://stackoverflow.com/questions/3891774...-yocto-bitbake)?

AFAIK there are two different ways of doing this.

The kernel way: Using the scripts provided by the kernel

Change to your kernel source directory (<build dir>/tmp/work/<machine>/<kernel-name>/<kernel-version>/git/)
Execute the device-tree-compiler: ./scripts/dtc/dtc -I dts -O dtb -o ./devicetree.dtb path/to/devicetree.dts

The bitbake way: Using the the kernel's deploy job

Call $ bitbake <kernel-name> -f -c deploy
The generated device-tree-blob then can be found in <build dir>/tmp/work/<machine>/<kernel-name>/<kernel-version>/build/arch/arm/boot/dts/)

Share this post


Link to post
Share on other sites
такое пробовали (отсюда https://stackoverflow.com/questions/3891774...-yocto-bitbake)?

AFAIK there are two different ways of doing this.

The kernel way: Using the scripts provided by the kernel

Change to your kernel source directory (<build dir>/tmp/work/<machine>/<kernel-name>/<kernel-version>/git/)
Execute the device-tree-compiler: ./scripts/dtc/dtc -I dts -O dtb -o ./devicetree.dtb path/to/devicetree.dts

The bitbake way: Using the the kernel's deploy job

Call $ bitbake <kernel-name> -f -c deploy
The generated device-tree-blob then can be found in <build dir>/tmp/work/<machine>/<kernel-name>/<kernel-version>/build/arch/arm/boot/dts/)

Да. dtc не работает. Выдаёт syntax error. Вроде в Yocto формат dts-файлов отличается от стандарта.

bitbake tisdk-rootfs-image -f -c deploy не работает. Выдаёт

ERROR: Nothing PROVIDES 'tisdk-rootfs-image'

ERROR: tisdk-rootfs-image was skipped: incompatible with machine arago (not in COMPATIBLE_MACHINE)

MACHINE=varsomam33 bitbake tisdk-rootfs-image -f -c deploy тоже не работает. Выдаёт:

ERROR: Task do_deploy does not exist for target tisdk-rootfs-image

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this