LINUX.ORG.RU

gentoo: calls gcc directly (поясните суть)

 , ,


0

1

Привет, на b.g.o видел множество подобных багов, в компиляторах я не силен, поэтому прошу пояснить в чем суть бага как детектится и как фиксится, ну или направить к нужной доке, пример подобного бага https://bugs.gentoo.org/show_bug.cgi?id=427448 Заранее спасибо.


Подозреваю, что вызывать gcc напрямую запрещено, чтобы можно было заменить его на что-то другое.

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

Все-таки пока далеко не все собирается «другими компиляторами».

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

в какой части приведенного фрагмента процесса компиляции возникает проблема... я что то догнать не могу... Хотя и вопрос то не сложный...

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

Оно-то соберется. Просто ебилд не должен быть привязан к gcc. Он должен вызывать chost-gcc или как его там, которые берется из настроек в make.conf

Вот хочет юзер иметь систему, собранную clang. gcc он выпилил нафиг. А тут софтина пытается его использовать.

Или другой пример. Указал юзер в флагах -march=native, а ему ебилд собирает с generic, потому что опции к gcc захардкожены.

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

а как тогда будет выглядеть «нормальная» компиляция, чтоб было с чем сравнить..

mkeee ()
Ответ на: комментарий от vurdalak

т.е. получается, что пакет собирается успешно, только потому, что в системе стоит gcc который ебилд вызывает напрямую, а будь gcc выпелен, то мы бы получили fails to compile, потому, что gcc в системе нет, а в make.conf в CHOST строке вместо gcc прописан например g++, а ебилд пытается использовать gcc не заглядывая в make.conf а должен заглядывать. Я правильно понял?

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

Правильно, только я бы разбил это длинное предложение на разные :3

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

Потому, что вместо gcc может быть icc или clang или…

anonymous ()
Ответ на: комментарий от mkeee

Потому, что нехрен раздувать бинари отладочной информацией — если понадобится можно пересобрать с ней. Это, кроме того, относится к большинству флагов компилера, связанных с оптимизацией — они должны браться из $CFLAGS etc.

anonymous ()
Ответ на: комментарий от buddhist

Можно отдельные пакеты собирать отдельным компилятором. Я сам такой ерундой страдал, пока не надоело.

beresk_let ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.