vak: (Default)
[personal profile] vak
Набрёл на забавную багу на платке RISC-V. Установил clang из пакетов стандартным образом: "sudo apt install clang", все дела. Вызываю clang без параметров, и внезапно:
$ clang
PLEASE submit a bug report to https://bugs.llvm.org/ and include the crash backtrace, preprocessed source, and associated run script.
Stack dump:
0. Program arguments: clang
1. Compilation construction
/usr/lib/riscv64-linux-gnu/libLLVM-11.so.1(_ZN4llvm3sys15PrintStackTraceERNS_11raw_ostreamE+0x28)[0x3ff17dec08]
Illegal instruction
Проверил несколько других компиляторов: gcc, rustc, golang. Всё пашет как положено, один clang валится как прокажённый. Написал в bugs.llvm.org - говорят, обращайтесь к своим Debian саппортерам, наворотили чего для RISC-V небось. Посоветовали попробовать собрать с исходников.

Ладно, мне нетрудно, запустил сборку. Процесс компиляции неспешный выходит, боюсь, сутки займёт.

Date: 2021-06-17 23:56 (UTC)
archaicos: Шарж (Default)
From: [personal profile] archaicos
Там cmake как-то очень медленно делал свою работу и вроде даже совсем и не думал параллелиться, от чего шланг компилировался часы на мощном компе.

Date: 2021-06-18 00:31 (UTC)
archaicos: Шарж (Default)
From: [personal profile] archaicos
О да, gcc съест всю память, даже ту, которой нет. Помнится компиляция TF на трёх гигах оперативки с повторяющимся (до успеха) удвоением размера свопа. :)

Date: 2021-06-18 02:21 (UTC)
x86128: (Default)
From: [personal profile] x86128
А есть qemu с виртуальным risc-v чтобы быстрее собирать?

Date: 2021-06-18 03:13 (UTC)
archaicos: Шарж (Default)
From: [personal profile] archaicos
О! А нет ли у этого железа списка багов с этим багом? А, похоже заюзали инструкции, которые не везде есть.
Edited Date: 2021-06-18 03:15 (UTC)

Date: 2021-06-18 08:07 (UTC)
From: [personal profile] ivanrubilo
Зачем так изворачиваться если можно кросс-компилировать на жирном AMD Ryzen?

Date: 2021-06-20 00:02 (UTC)
pappadeux: (Default)
From: [personal profile] pappadeux
> вроде даже совсем и не думал параллелиться

так это не его проблема

кто там снизу был?

Date: 2021-06-20 02:50 (UTC)
pappadeux: (Default)
From: [personal profile] pappadeux
cmake не является билдером, он - автоконфигуратор

скажем, конфигурировать для make мб проблемой

а сконфигурировать для ниндзи - и все полетит

Date: 2021-06-20 04:47 (UTC)
archaicos: Шарж (Default)
From: [personal profile] archaicos
Я понимаю, но были какие-то странные тормоза, и я тогда не стал ковырять.