[SOLVED] ERROR: dev-lang/rust-1.29.1-r1::gentoo failed (compile phase): ^[[31;01m*^[[0m (no error message)

Здравствуйте.
Подскажите, пожалуйста, как разобраться с такой ситуацией:

Build completed unsuccessfully in 2:01:54
^[[31;01m*^[[0m ERROR: dev-lang/rust-1.29.1-r1::gentoo failed (compile phase):
^[[31;01m*^[[0m (no error message)
^[[31;01m*^[[0m
^[[31;01m*^[[0m Call stack:
^[[31;01m*^[[0m ebuild.sh, line 124: Called src_compile
^[[31;01m*^[[0m environment, line 2496: Called die
^[[31;01m*^[[0m The specific snippet of code:
^[[31;01m*^[[0m env $(cat "${S}"/config.env) "${EPYTHON}" ./x.py build --config="${S}"/config.toml -j$(makeopts_jobs) --exclude$
^[[31;01m*^[[0m
^[[31;01m*^[[0m If you need support, post the output of `emerge --info '=dev-lang/rust-1.29.1-r1::gentoo'`,
^[[31;01m*^[[0m the complete build log and the output of `emerge -pqv '=dev-lang/rust-1.29.1-r1::gentoo'`.
^[[31;01m*^[[0m The complete build log is located at '/var/tmp/portage/dev-lang/rust-1.29.1-r1/temp/build.log'.
^[[31;01m*^[[0m The ebuild environment file is located at '/var/tmp/portage/dev-lang/rust-1.29.1-r1/temp/environment'.
^[[31;01m*^[[0m Working directory: '/var/tmp/portage/dev-lang/rust-1.29.1-r1/work/rustc-1.29.1-src'
^[[31;01m*^[[0m S: '/var/tmp/portage/dev-lang/rust-1.29.1-r1/work/rustc-1.29.1-src'

Нечто подобное здесь было у одного юзера (у него ninja выдавала такое). Скажите, с чем могут быть связаны ошибки подобного рода?

Helloo

Helloo написал(а):
Здравствуйте.
Подскажите, пожалуйста, как разобраться с такой ситуацией.....

Для начала неплохо бы полный лог (/var/tmp/portage/dev-lang/rust-1.29.1-r1/temp/build.log).

Спасибо

Вас понял.

Люди говорят, что проходит время.
Время говорит, что проходят люди.

Из своего опыта предполагаю,

Из своего опыта предполагаю, что нехватка памяти, но нужен полный лог, как уже сказано выше.

А куда можно выложить столько текста?

Или не имеет значения, лишь бы вы смогли прочитать?

Люди говорят, что проходит время.
Время говорит, что проходят люди.

Лог на гугл-диске

https://drive.google.com/open?id=1fT2GKqLyUFDMT8v60gb2fcbak-juufnW

Люди говорят, что проходит время.
Время говорит, что проходят люди.

Нечитаемо, да и зачем так

Нечитаемо, да и зачем так сложно?!..

Просто сделай

wgetpaste /var/tmp/portage/dev-lang/rust-1.29.1-r1/temp/build.log

и кинь сюда ссылку, которую тебе сгенерят! :)

A заодно сбрось конфигурацию железа:

sudo lshw|wgetpaste

Если нет wgetpaste, то установи app-text/wgetpaste.

Спасибо.

Сложно, потому что первый раз столкнулся с тем, что нужно выложить полный лог.
Практикую систему больше, чем изучаю теоретически.
Появилась проблема - тогда ищу информацию в интернете.
А книги читать и запоминать - не идет так у меня (мож моск не тот) - инфы много и малополезная она, как по мне.
А как вы изучаете систему?

Люди говорят, что проходит время.
Время говорит, что проходят люди.

:D

Вот.
wgetpaste /var/tmp/portage/dev-lang/rust-1.29.1-r1/temp/build.log
Pasting > 25 kB often tend to fail with dpaste. Use --verbose or --debug to see the
error output from wget if it fails. Alternatively use another pastebin service.
Apparently nothing was received. Perhaps the connection failed. Enable --verbose or
--debug to get the output from wget that can help diagnose it correctly.

Теперь буду знать, что существуют такие сервисы. И разбираться буду еще с этим. ;)
Alternatively use another pastebin service.

Люди говорят, что проходит время.
Время говорит, что проходят люди.

А вот железо.

http://dpaste.com/1HVQFVH

Понятное дело, что слабенькое.

Люди говорят, что проходит время.
Время говорит, что проходят люди.

Предлагаю не выпендриваться

-memory
          description: System Memory
          physical id: e
          slot: System board or motherboard
          size: 2GiB

Это не просто "слабенькое", а уж совсем не годится для компиляции ржавчины! :) Ему надо не менее 4Гб.
Предлагаю не выпендриваться, а поставить dev-lang/rust-bin или вообще перейти на Убунту на этой машинке. На 2Гб все будет тоскливо компилиться. Если уж хочется пофорсить - открой для себя sys-devel/distcc!.. ;) Но все равно таких монстров, как офис, огнелис и т.п. придется ставить из бинарников!

?

Сборку Лисы с Птицей на аналогичной машинке практикую досейчас.
А на предущем приближении случайно воткнул и локальнойю сборку LO. Сейчас, правда, откатился на бинарную.

:wq
--
Live free or die

LO? С 2Гб?! И сколько дней

LO? С 2Гб?! И сколько дней идет сей процесс?!.. :)
FF и LO, конечно, не ругаются на 2Гб, как это делает свежая ржавчина, требуя 4Гб минимум, но LO уж очень долго собирается на ноутах... FF еще хоть как-то терпеть можно... на i5 с 4Gb и SSD у меня собирается где-то за 3 часа...

?

SysA написал(а):
LO? С 2Гб?! И сколько дней идет сей процесс?!.. :)

Я этот эпизод банально и благополучно прошляпил.
Следовательно, процесс уложился в интервал ~12 часов.

ЗЫ: НЯП ещё у dev-java/icedtea хороший аппетит.

:wq
--
Live free or die

еще и зависимостей немерено тянет!

У тебя, наверное, там тоже SSD? У меня LO 5 версии на десктопе Dual-Core с 8Гб и SSD от 5 до 11 часов генерился в зависимости от загрузки... а на 6 версии уже на бинарник перешел.

А dev-java/icedtea еще и зависимостей немерено тянет! Поэтому в производстве стоит также бинарник. С ним все протестировано и работает, а то раньше Оракловая Ява была, так забодало вручную архивы грузить с ОраклНета! :)

SysA написал(а): -memory

SysA написал(а):
-memory
          description: System Memory
          physical id: e
          slot: System board or motherboard
          size: 2GiB

Это не просто "слабенькое", а уж совсем не годится для компиляции ржавчины! :) Ему надо не менее 4Гб.
Предлагаю не выпендриваться, а поставить dev-lang/rust-bin или вообще перейти на Убунту на этой машинке. На 2Гб все будет тоскливо компилиться. Если уж хочется пофорсить - открой для себя sys-devel/distcc!.. ;) Но все равно таких монстров, как офис, огнелис и т.п. придется ставить из бинарников!

Может, вы и правы.
А как же философия Gentoo? На хорошее железо можно и винду установить.

Люди говорят, что проходит время.
Время говорит, что проходят люди.

Философия Генту не в том

Философия Генту не в том, чтобы работать на плохом железе (с этим-то как раз проблемы!), а в том, что все настраивать под себя! :)

Поэтому при прочих равных условиях Гента работает лучше и надежнее... если ты знаешь, что делаешь, и руки у тебя из правильного места растут! ;) И проблемы Генты даже не с самой установкой, а с поддерживанием в актуальном состоянии на слабом железе... но иначе нет смысла...

P.S. Резюмируя можно сказать, что не надо фанатизма! Т.е. если тебе реально надо работать, а не играться, то выбирать инструмент надо по задачам, учитывая ресурсы и возможности. А не из идеологических соображений. Я уже давно прошел ту стадию, когда на дохлый нетбук ставил Генту. Через распределенное и удаленное компилирование можно, конечно, поддерживать на нем Генту, но зачем?! Везде, где только можно, у меня и так есть Генту: на работе и десктоп, и сотни серверов, даже на ноуте, с которого сейчас пишу!:) Так что поиграться есть с чем... Но на личных серверах, которые разбросаны по миру, стоят разные системы... тоже на "поиграться"...;)

P.P.S. А играться с Гентой лучше на хорошем железе, чтобы жизнь не превращалась в непрерывное ожидание завершения компиляции...:D

А я играюсь как раз

Я бомж, на хорошее железо нету бабла. К тому же, я гулять люблю. :)
Пусть себе компилится, хоть до окончания мира - мне торопиться некуда. :)
Я на уличку выйду, у нас весна. Цветут абрикосовые деревья, девушки поснимали верхнюю одежду.
Вот так. А Гента... Подождет, главное - поглядеть мир.
И пересобрать, конечно, на Генте.

Люди говорят, что проходит время.
Время говорит, что проходят люди.

Оно???


error : could not exec the linker `x86_64-pc-linux-gnu-gcc`
note : Cannot allocate memory (os error 12)

Да, вы правильно написали. Оно.

(os error 12)

Спасибо большое, буду пробовать разбираться.

Люди говорят, что проходит время.
Время говорит, что проходят люди.

gentoo-wiki

tmpfs && notmpfs
да еще можно swap через zram подключить гигов на 12, тока надо ядро брать rt или ck.
Кстати в funtoo rust-bin.

maxsib.space

Благодарю за отклик

maxsib написал(а):
tmpfs && notmpfs
да еще можно swap через zram подключить гигов на 12, тока надо ядро брать rt или ck.
Кстати в funtoo rust-bin.

Та мне интересно именно скомпилить, если это не слишком геморно на моем ноуте. :)
А rust-bin подождет.

Люди говорят, что проходит время.
Время говорит, что проходят люди.

Слишком! :)

Слишком! :)

Всех благодарю.

Проблема решена. Таки скомпилировалось. Поискал в гугле, как подключить своп.
У меня был своп-раздел на 2 Гб.
Подумал сделать на 10 Гб вот так (если безграмотно - извините, просто в виде ориентира пишу):

dd if=/dev/zero of=/swap bs=1M count=10240 #создание файла, забитого нулями, на 10Гб.
mkswap /swap # Создание свопа в этом файле
chmod 0600 /swap # Не помню, что за команда
swapon /swap # Не помню.

Потом 3 часа компиляции - и, вуаля. Все ок. :)

Решение по первым ссылкам гугла.

Люди говорят, что проходит время.
Время говорит, что проходят люди.

Поздравляю!

Поздравляю!
Как-то быстро через своп получилось...
У тебе там супер проц и/или ССД? У меня на Dual-CoreE5300@2.60GHz с 8Гб рамы (своп выключен совсем) 4 часа компилится! :(
Правда там еще другие задачи идут в параллель...
Кстати, небольшое ускорение будет, если переформатировать разделы и сделать раздел свопа на 16Гб - на вырост ;).

Процессор.

cat /proc/cpuinfo

processor : 0
vendor_id : GenuineIntel
cpu family : 6
model : 42
model name : Intel(R) Core(TM) i3-2310M CPU @ 2.10GHz
stepping : 7
microcode : 0x14
cpu MHz : 2095.198
cache size : 3072 KB
physical id : 0
siblings : 4
core id : 0
cpu cores : 2
apicid : 0
initial apicid : 0
fpu : yes
fpu_exception : yes
cpuid level : 13
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic popcnt tsc_deadline_timer xsave avx lahf_lm epb pti tpr_shadow vnmi flexpriority ept vpid xsaveopt dtherm arat pln pts
bugs : cpu_meltdown spectre_v1 spectre_v2 spec_store_bypass l1tf
bogomips : 4190.39
clflush size : 64
cache_alignment : 64
address sizes : 36 bits physical, 48 bits virtual
power management:

И еще три таких простыни, то есть, всего четыре получается.
Не знаю, но правда столько времени компилилось. Я не запускал во время компиляции графическую среду, которая у меня xfce. Хотя раньше запускал.
То есть, система загрузилась, ввел в консоли логин и пароль, и emerge -av rust

Честно, я не совсем понял, проц у меня, вроде, 2-х ядерный. Но, вроде, есть еще поточность какая-то. И тут, cat /proc/cpuinfo, отображается она, наверное. 4-ре потока.
Надо еще почитать на эту тему, не понял я нифига. Одним глазом глянул когда-то.
Не ССД у меня, к сожалению.

Люди говорят, что проходит время.
Время говорит, что проходят люди.

Ядра у тебя два, конечно!

Ядра у тебя два, конечно!
A то, что ты видишь, это Hyper-Threading - Интелевая обманка, которая в основном была ориентирована на винду для имитации мультипроцессорности и улучшения продаж. Реально дает выигрыш для крайне ограниченного класса задач, но требует дополнительных ресурсов системы для обслуживания, в большинстве случаев дополнительные задержки во внутренних очередях и т.п. На моей предыдущей работе мы первым делом при установке отключали это в БИОСе.

А если вместо ССД использовать флешку?

А че?
У меня есть флешка USB 3.0 на 64 Гб.
Как думаешь?
На нее установить ОСЬ.
Конечно, USB и... Как там ССД подключается? Разница есть в передаче информации.
Надо это почитать. :)

Люди говорят, что проходит время.
Время говорит, что проходят люди.

При интенсивной работе быстро

При интенсивной работе быстро убьешь флешку! :)
У меня есть система на флешке, которую я всегда ношу с собой (на брелке с ключами), но я использую ее только для аварийной загрузки и тестирования.

Наверное, да. :)

Вот сейчас создам новую тему на форуме. Как раз об этом.
Работы интенсивной не было вообще. Флешка почти новая, на 64 Гб... Была. :)

Люди говорят, что проходит время.
Время говорит, что проходят люди.

У человека итак ПАМЯТИ не

maxsib написал(а):
tmpfs && notmpfs
да еще можно swap через zram подключить гигов на 12, тока надо ядро брать rt или ck.
Кстати в funtoo rust-bin.

У человека итак ПАМЯТИ не хватает, а ты ему советуешь файловые системы в эту память пихать! :D

вроде речь про оперативу

Мне не хватает, например, 8Г оперативы для компилежа как хромиума, так и того же раст (хоть они и вынесены в notmpfs),- поэтому приходится включать в таких случаях zram.
С хромиумом своп в зраме растет до 9Г
с растом не помню, но тоже немало
К тому же zram, мне кажется, лучше. Но я могу ошибаться, конечно

maxsib.space

Не знаю, что лучше.

Чем лучше zram?
Если специфичное ядро к нему надо, например.

Люди говорят, что проходит время.
Время говорит, что проходят люди.

данные

сохраняются, по моим наблюдениям.
Заменил генту на crux

maxsib.space

Почему?

maxsib написал(а):
Заменил генту на crux

Интересно, почему?

Люди говорят, что проходит время.
Время говорит, что проходят люди.

Вы указали мне правильное направление. :)

Да, своп.
Но тот способ, который я уже описал, судя по всему более универсальный - для любого ядра, как я понял.

Люди говорят, что проходит время.
Время говорит, что проходят люди.

+

Подтверждаю.

В свежестабилизированном =dev-lang/rust-1.34.1 сделали проверку на наличие минимум 4 гигов.

:wq
--
Live free or die

А фрагмент ебилда не

А фрагмент ебилда не покажешь? Поскольку я вижу только 7Гб на диск.

.

SysA написал(а):
А фрагмент ебилда не покажешь? Поскольку я вижу только 7Гб на диск.

/usr/portage/gentoo/dev-lang/rust/rust-1.34.1.ebuild:

…
pre_build_checks() {
    CHECKREQS_DISK_BUILD="7G"
    CHECKREQS_MEMORY="4G"
…

:wq
--
Live free or die

Хм... Странно...

сегодняшний слепок репы:

ls -l /usr/portage/dev-lang/rust/rust-1*
-rw-r--r-- 1 root root 8002 Mar 15 20:39 /usr/portage/dev-lang/rust/rust-1.29.1-r1.ebuild
-rw-r--r-- 1 root root 7534 Mar 15 20:39 /usr/portage/dev-lang/rust/rust-1.29.2-r1.ebuild
-rw-r--r-- 1 root root 8159 May 13 13:09 /usr/portage/dev-lang/rust/rust-1.30.1-r1.ebuild
-rw-r--r-- 1 root root 8157 May 13 13:09 /usr/portage/dev-lang/rust/rust-1.31.1.ebuild
-rw-r--r-- 1 root root 8624 May 13 13:09 /usr/portage/dev-lang/rust/rust-1.32.0.ebuild
-rw-r--r-- 1 root root 8706 May 13 13:09 /usr/portage/dev-lang/rust/rust-1.33.0.ebuild
-rw-r--r-- 1 root root 9011 May 17 00:09 /usr/portage/dev-lang/rust/rust-1.34.2.ebuild

А твоей версии вообще нет!

equery l rust -p
 * Searching for rust ...
[-P-] [  ] dev-lang/rust-1.29.1-r1:stable/1.29
[-P-] [ ~] dev-lang/rust-1.29.2-r1:stable/1.29
[-P-] [ ~] dev-lang/rust-1.30.1-r1:stable/1.30
[-P-] [ ~] dev-lang/rust-1.31.1:stable/1.31
[-P-] [ ~] dev-lang/rust-1.32.0:stable/1.32
[-P-] [ ~] dev-lang/rust-1.33.0:stable/1.33
[-P-] [  ] dev-lang/rust-1.34.2:stable/1.34

Последний стабильный /usr/portage/dev-lang/rust/rust-1.34.2.ebuild:

pre_build_checks() {
        CHECKREQS_DISK_BUILD="7G"
        eshopts_push -s extglob
        if is-flagq '-g?(gdb)?([1-9])'; then
                CHECKREQS_DISK_BUILD="10G"
        fi
        eshopts_pop
        check-reqs_pkg_setup
}

Ты уверен, что у тебя зеркала не левые? Или из оверлеев? У меня
GENTOO_MIRRORS="http://www.mirrorservice.org/sites/distfiles.gentoo.org/ http://ftp.snt.utwente.nl/pub/os/linux/gentoo/ http://mirrors.evowise.com/gentoo/ http://gentoo.mirrors.ovh.net/gentoo-distfiles/"

/

Не вижу особенных странностей.
Синхронизировался в начале недели, перед обновлением, по сценарию webrsync.

$ cat /usr/portage/gentoo/metadata/timestamp:

Mon May 13 00:38:53 UTC 2019

:wq
--
Live free or die

Странность в том, что,

Странность в том, что, вопреки твоему заявлению, в стабильном ебилде нет проверки на память! :)
И ее нет также ни до, ни после указанной тобой даты... т.е. совсем нет... во всех ебилдах...

Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Сохранить установки".