LINUX.ORG.RU

При попытке собрать U-boot для rk3588 проблема с питоном

 ,


0

1

Инструкция эта https://u-boot.readthedocs.io/en/latest/board/rockchip/rockchip.html

При сборке:

SYM     spl/u-boot-spl.sym
  MKIMAGE u-boot.img
  MKIMAGE u-boot-dtb.img
  BINMAN  .binman_stamp
python-exec: Invalid impl in /etc/python-exec/python-exec.conf: python3.7
Traceback (most recent call last):
  File "u-boot/./tools/binman/binman", line 46, in <module>
    from binman import control
  File "u-boot/tools/binman/control.py", line 16, in <module>
    import pkg_resources
ModuleNotFoundError: No module named 'pkg_resources'
make: *** [Makefile:1111: .binman_stamp] Ошибка 1

Где и как взять этот модуль «pkg_resources» не знаю и найти не могу.

Надесь на подсказки.

Разрешил. В файле /etc/python-exec/python-exec.conf прописал нужную версию питона, 3.10

★★★★★

Последнее исправление: burato (всего исправлений: 1)

Есть подозрение что питон который используется там и питон в котором ты ставил setuptools это разные питоны. Дистры сейчас любят сами делать multienv

upcFrost ★★★★★
()
Последнее исправление: upcFrost (всего исправлений: 1)
Ответ на: комментарий от burato

Для начала, разобраться, какой именно Python там дёргается при сборке: дистрибутивный, собирается собственный, или создаётся virtualenv из дистрибутивного.

Как именно сделать это для данного u-boot, задача на часы времени, поэтому у меня нет возможности, например.

Начать поиск с Makefile и скриптов, в крайнем случае, использовать strace.

После этого, установить в окружении данного интерпретатора setuptools.

emorozov
()
20 сентября 2023 г.

Разобрался?

Посоветуешь советом че там дальше? Я убут собрал, с SD-шки грузится, в UART-консоль убута пускает, а как ему дальше ядро скормить?

Исследую-маследую.. мож ты уже разобрался

pihter ★★★★★
()
Ответ на: комментарий от burato

А на сей чип есть ядро дебиановское, от рокчипа.

Оно у меня на дев-борде даже работает – не нарадуюсь. У меня вот затыка как убуту ядро скормить. Ну поразбираюсь еще денек

Из исходников самосборное не будет грузиться.

А это почему?

pihter ★★★★★
()
Ответ на: комментарий от pihter

У меня вот затыка как убуту ядро скормить

Достаточно несложно. В зависимости от файловой системы и устройства, где лежит ядро, адрес тоже надо знать свой

setenv bootargs "root=/dev/root rootwait rootfstype=ext4 console=ttyS0"
(можно сделать saveenv)
ext4load mmc 0:1 0x08008000 /boot/image
fatload usb 0:1 0x00800800 /boot/dtb
booti 08008000 - 00800800
Если сохранить переменные так, что оно автоматом будет грузить, то жизнь сильно упростишь. Делать как принято конфиг для загрузки не рекомендую, так как захочешь другое ядро-положишь систему и не сможешь загружать.

burato ★★★★★
() автор топика
Ответ на: комментарий от burato

// я в первый раз таким занимаюсь, так что за глупые вопросы, пожалуйста, не пинай :)

ext4load mmc 0:1 0x08008000 /boot/image

это я с нанда загружаю ядро в оперативку? 0 – айди девайса, 1 – раздела? Откуда 0x08008000? Это от болды адрес в оперативке куда грузить?

Далее загруженное ядро запускаю booti? Почему два числа в аргументах?

Что такое девайс-три-блоб? ( в двух словах )

Что на тему почитать чтоб не задавать глупых вопросов?

Заранее – спасибо.

pihter ★★★★★
()
Ответ на: комментарий от pihter

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

burato ★★★★★
() автор топика
Ответ на: комментарий от burato

ух-ты. Ну грех отказываться. Напиши (если не затруднит такой способ, или предложи удобный тебе) на need4helpwithuboot сбк яндекс ру что-нибудь, и дай знать здесь, что то письмо от тебя – договоримся о связи.

Заранее благодарю

pihter ★★★★★
()
Ответ на: комментарий от burato

Думаю, что потихоньку разобраться можно, нашел на гитхабе описание убут-комманд, продвигаюсь:

=> ext4ls mmc 1:0 /
=> ext4ls mmc 1:1 /
=> ext4ls mmc 1:2 /
=> ext4ls mmc 1:3 /
<DIR>       1024 .
<DIR>       1024 ..
<DIR>      12288 lost+found
        40606208 Image-5.10.160
         8016897 System.map-5.10.160
          205750 config-5.10.160
<DIR>       1024 extlinux
         9204292 initrd-5.10.160
<DIR>       1024 lib
          127818 logo.bmp
          127818 logo_kernel.bmp
          415798 logo_stationm.bmp
         1000056 logo_stations.bmp
<SYM>         52 rk-kernel.dtb
          171371 rk3588-firefly-itx-3588j-dual-mipi101-M101014-BE45-A1.dtb
          169061 rk3588-firefly-itx-3588j-mipi101-M101014-BE45-A1.dtb
          166091 rk3588-firefly-itx-3588j.dtb

=> ext4load mmc 1:3 0x008008000 /Image-5.10.160 
40606208 bytes read in 1389 ms (27.9 MiB/s)
=> booti 08008000 - 00800800
Moving Image from 0x8008000 to 0x8200000, end=a960000
ERROR: Did not find a cmdline Flattened Device Tree
Could not find a valid device tree

это ты на почту написал, али хулиган какой?

pihter ★★★★★
()
Ответ на: комментарий от pihter

О. Ядро запустил. Щас буду с рутфс-ом развлекаться!

ext4load mmc 1:5 0x008008000 /Image-5.10.160
40606208 bytes read in 1389 ms (27.9 MiB/s)

=> ext4load mmc 1:5 0x00800800 /rk-kernel.dtb
169061 bytes read in 15 ms (10.7 MiB/s)

=> booti 08008000 - 00800800
Moving Image from 0x8008000 to 0x8200000, end=a960000
## Flattened Device Tree blob at 00800800
   Booting using the fdt blob at 0x800800
Working FDT set to 800800
ERROR: reserving fdt memory region failed (addr=0 size=0 flags=0)
ERROR: reserving fdt memory region failed (addr=0 size=0 flags=0)
   Loading Device Tree to 00000000eceae000, end 00000000eceda464 ... OK
Working FDT set to eceae000

Starting kernel ...

[  174.118988] Booting Linux on physical CPU 0x0000000000 [0x412fd050]
[  174.119016] Linux version 5.10.160 (lvsx@tchip16) (kernel commit id: dc384cc20ddf) (sdk version: rk3588_linux_release_20230704_v1.1.1a) (aarch64-none-linux-gnu-gcc (GNU Toolchain for the A-profile Architecture 3
[  174.129268] Machine model: Firefly ITX-3588J MIPI(Linux)

... bla-bla-bla ...

pihter ★★★★★
()
Ответ на: комментарий от burato

Это очень сложная тема и у тебя с наскока точно не получится.

победил! и в немалой степени благодаря твоей подсказке как заводить ядро – действительно сложная мура – спасибо за совет!

pihter ★★★★★
()