LINUX.ORG.RU

Как скомпилировать компилятор


0

0

допустим, собрал gcc 3.4.4, используя установленный gcc 3.2.2. Надо ли теперь ещё раз его скомпилировать им самим или нет? /me в раздумьях - на 200ММХ он >10 часов собирался...

логика подсказывает что надо, а какое-то животное чувство - что не надо.

★★★★★

--enable-bootstrap и у тебя будет в распоряжении целый день :)

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

неправильно. Читаю про bootstrap - это то что нужно было!

Я сказал просто make, раньше просто пересобирал его ещё раз. Эх :-/ Придётся его пересобирать...

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

компилятор gcc собирается в 3 стадии:

1) old_gcc собирает new_gcc_stage_1

2) new_gcc_stage_1 собирает new_gcc_stage_2

3) new_gcc_stage_2 собирает new_gcc_stage_3

естественно, алгоритм и входные данные для 2 и 3 стадии одинаовы. Значит и выход должен быть одинаков. Поэтому полсе сборки происходит побитная проверка на совпадение new_gcc_stage_2 и new_gcc_stage_3. Если есть хоть 1 бит различия - ошибка в сьорке. иначе - сборка завершается с успехом.

так что если ты все правильно собрал - у тебя уже gcc 3.4.4 собранный gcc 3.4.4 =)

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

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

не по умолчанию, а в документации.

там ясно скахано - make bootstrap

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

Короче, дядя, если сделать `make; make install; make clean; make; make install` то в принципе у тебя выйдет экономия в 10 часов (а если профилирование отрубишь - то ещё 10). Но чистота достигнута не будет, т.к. этим компилером нужно ещё и glibc с binutils пересобрать. Короче, поставь генту и не мучайся, или LFS почитай.

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