LINUX.ORG.RU

Как корректно сменить CFLAGS в Gentoo?

 


0

1

Хочу поднять у себя бинарное зеркало. У меня сейчас в make.conf стоит

CFLAGS="-march=native -O2 -pipe"
Я так понимаю, для создания бинарников, пригодных для всех процессоров, нужно убрать "-march=native" и потом сделать «emerge -e system && emerge -e world»? Нужно ли сделать что-нибудь еще или этого будет достаточно? Может быть, перед перекомпилляцией пересобрать gcc или что-нибудь подобное или это необязательно? Не хотелось бы после пересборки получить нерабочую систему.
И еще один вопрос не совсем по теме, но чтобы лишнюю тему не создавать. Есть ли в линуксе годные файловые системы с поддержкой снапшотов? Чтобы в случае большого кривого обновления или попросту сделанной своими руками глупости можно было загрузиться с live cd и откатить корневой каталог до более раннего состояния.

★★★★★

-march=generic по-моему надо ставить.

Есть ли в линуксе годные файловые системы с поддержкой снапшотов?

btrfs, zfs

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

Но у меня же 64-битная система.

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

Я бы хотел, чтобы мои бинарники подходили под любой процессор. Calculate же делает свои бинарники.

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

В make.conf по умолчанию вообще march не стоит, специально сейчас скачал stage3, чтобы проверить:

CFLAGS="-O2 -pipe"

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

если хотя бы не старее S478, то так: CFLAGS="-O2 -pipe -march=pentium4 -mmmx -msse2 -mfpmath=sse"

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

Calculate же делает свои бинарники.

Calculate вроде бы выпускает отдельные бинарники для i386 и для amd64. Они никак не пересекаются.

для создания бинарников, пригодных для всех процессоров

Это называется fat-binary гугл говорит что нужно нечто такое прописать в make.conf

EXTRA_ECONF="--enable-fat"

Остальные люди вообще не по теме ответили.

Update: Если я всё правильно понял то

-march
нужно указать 2 раза. Первый с нативной архитектурой и второй раз с архитектурой другого компьютера.

Ps: Всё основано на гуглении, я такое не проворачивал.

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

Calculate вроде бы выпускает отдельные бинарники для i386 и для amd64. Они никак не пересекаются.

Причем тут архитектура операционной системы и тип процессора? Calculate'овские бинарники идут и на процессорах Intel, и на процессорах AMD и у этих брендов у каждого еще куча своих линеек имеется. Вот и я хочу, чтобы мои бинарники подходили КО ВСЕМ процессорам (не старше 2008 года выпуска).

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

Причем тут архитектура операционной системы и тип процессора?

Ты это серьёзно?

Если по делу, убери -march и пересобери мир.

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

нужно указать 2 раза

вторая деректива -march отменит первую

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

я хочу, чтобы мои бинарники подходили КО ВСЕМ процессорам (не старше 2008 года выпуска)

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

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

Calculate'овские бинарники идут и на процессорах

нет, у них две отдельных сборки для x86_64 и i686

anonymous
()

отписавшихся выше можешь игнорировать, правильные флаги

x86-64 -march=x86-64

x86 -march=i686

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

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

Ну мне явно не нужна работа бинарников на процессоре 1993 года. Сам уже заканчивай тупить. Убунта бинарная, идет на всех процессорах, дебиан бинарный, идет так же, Calculate полубинарный, идет на всех процессорах. Я хочу, чтобы и мои бинарники были такими! Неужели непонятно?

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

I have a package (sci-libs/mpir) whose configure supports building of fat binaries

я не думаю, что тс достаточен один sci-libs/mpir. больше такого нигде нет

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

мне явно не нужна работа бинарников на процессоре 1993 года

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

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

Вот это уже похоже на правду. И в Calculate тоже так прописано, смотрю сейчас их live cd в виртуалке. Спасибо!

Rinaldus ★★★★★
() автор топика
CFLAGS="-march=generic -O2 -pipe"
emerge -1 gcc
emerge -e world

По крайней мере у меня всё работает. Gentoo ~amd64.

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

Ну конечно, написать какую-нибудь гадость, не залогиниваясь, - это так смело и по-мужски. Интересно, когда на ЛОРе запретят постить анонимусам?

Rinaldus ★★★★★
() автор топика

Есть ли в линуксе годные файловые системы с поддержкой снапшотов? Чтобы в случае большого кривого обновления или попросту сделанной своими руками глупости можно было загрузиться с live cd и откатить корневой каталог до более раннего состояния.

што? к чему livecd и откаты? просто грузишься в прежний subvolume, а тот, что с кривыми обновлениями, уничтожаешь

anonymous
()

У меня есть исполняемый test_gcc_opts:

#!/bin/bash
echo "int main () {return 0;}" | LANG=C gcc $@ -v -Q -x c -o /dev/null - 2>&1
Можно сравнить выхлопы:
test_gcc_opts
test_gcc_opts -march=native -O2 -pipe
Profit!

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

В теме сказано что билдсистема ОТДЕЛЬНОГО пакета поддерживает --enable-fat. Нигде в теме не сказано что кто-то еще поддерживает это, более того, я могу сказать что большинство это как раз НЕ поддерживает.

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