Страница 1 из 1

Проблема с crossdev

Добавлено: 13.03.2024 13:32
devilr
Доброго времени суток!
Понадобилось на рабочей машине поставить arm-none-eabi. Начал, как обычно с установки crossdev и дальше столкнулся с ошибкой

Код: Выделить всё

# crossdev --target arm-none-eabi
--------------------------------------------------------------------------------------------------------------
 * crossdev version:      20240209
 * Host Portage ARCH:     amd64
 * Host Portage System:   x86_64-pc-linux-gnu (i686-pc-linux-gnu x86_64-pc-linux-gnu)
 * Target Portage ARCH:   arm
 * Target System:         arm-none-eabi
 * Stage:                 3 (C compiler & libc)
 * USE=multilib:          yes
 * Target ABIs:           default

 * binutils:              binutils-[latest]
 * gcc:                   gcc-[latest]
 * libc:                  newlib-[latest]

 * CROSSDEV_OVERLAY:      /var/calculate/repos/custom
 * PORT_LOGDIR:           /var/log/portage
 * PORTAGE_CONFIGROOT:    /
 * Portage flags:         
  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  -  
 * leaving sys-libs/newlib in /var/calculate/repos/custom
 * leaving sys-devel/binutils in /var/calculate/repos/custom
 * leaving sys-devel/gcc in /var/calculate/repos/custom
 * leaving dev-debug/gdb in /var/calculate/repos/custom
 * leaving metadata/layout.conf alone in /var/calculate/repos/custom
  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  -  
 * Log: /var/log/portage/cross-arm-none-eabi-binutils.log
 * Emerging cross-binutils ...
xz: Reduced the number of threads from 8 to 3 to not exceed the memory usage limit of 1972 MiB

 * error: binutils failed :(
 * 
 * If you file a bug, please attach the following logfiles:
 * /var/log/portage/cross-arm-none-eabi-info.log
 * /var/log/portage/cross-arm-none-eabi-binutils.log.xz
 * /var/calculate/tmp/portage/cross-arm-none-eabi/binutils*/temp/binutils-config.logs.tar.xz
Из ошибки понятно, что надо уменьшить количество потоков с 8 до 3, а как?

Re: Проблема с crossdev

Добавлено: 13.03.2024 13:40
Bizdelnick
devilr писал:
13.03.2024 13:32
надо уменьшить количество потоков
devilr писал:
13.03.2024 13:32
Reduced the number of threads
Неправильно перевели.

Re: Проблема с crossdev

Добавлено: 13.03.2024 13:49
devilr
Согласен, неправильно перевёл.
Но, как же решить саму проблему?

Re: Проблема с crossdev

Добавлено: 13.03.2024 14:41
Bizdelnick
Для начала, думаю, стоит поизучать логи.

Re: Проблема с crossdev

Добавлено: 13.03.2024 15:46
bars
хмм, может попробовать изменить MAKEOPTS="-j2" если эта гента.

Re: Проблема с crossdev

Добавлено: 13.03.2024 16:22
devilr
bars писал:
13.03.2024 15:46
хмм, может попробовать изменить MAKEOPTS="-j2" если эта гента.
Это - калькулятор, та же gentoo, только в профиль.
MAKEOPTS я как раз пробовал, хотя, как правильно заметил Bizdelnick - перевёл неправильно.
Пока временно решил проблему, качнув STM32CubeIDE (на работе всё же надо работать), хотя общая проблема так и не решена (если arm-none-eabi ставить нормально).

Re: Проблема с crossdev

Добавлено: 13.03.2024 19:24
ormorph
Что за комп домашний такой, если памяти всего 1972 MiB. Как правило MAKEOPTS="-j2" нужно прописывать перед командой crossdev, то что в /etc/portage/make.conf возможно не будет работать, скорее всего будет подхватываться из /usr/arm-none-eabi/etc/portage/make.conf. Ну и всегда можно использовать arm-none-eabi из docker.

Re: Проблема с crossdev

Добавлено: 13.03.2024 20:26
devilr
ormorph писал(а):
13.03.2024 19:24
Что за комп домашний такой, если памяти всего 1972 MiB
devilr писал:
13.03.2024 13:32
Понадобилось на рабочей машине поставить arm-none-eabi.
И там всего 8 гигабайт памяти. Машине больше 8 лет.
ormorph писал(а):
13.03.2024 19:24
Как правило MAKEOPTS="-j2" нужно прописывать перед командой crossdev
Я как раз так и делал. Но, если неправильно понять ошибку, то этим её не устранить. :)

Re: Проблема с crossdev

Добавлено: 13.03.2024 20:35
ormorph
devilr писал:
13.03.2024 20:26
Я как раз так и делал. Но, если неправильно понять ошибку, то этим её не устранить.
Ну там же показаны логи их и смотреть, что там показывает:

Shell

# xzcat /var/log/portage/cross-arm-none-eabi-binutils.log.xz
# xzcat /var/calculate/tmp/portage/cross-arm-none-eabi/binutils*/temp/binutils-config.logs.tar.xz
Ну и мне уже надоедает пересобирать arm-none-eabi, уже склоняюсь к использованию docker, для сборки.