как во freebsd пересобрать gcc, чтобы он весть проц загружал, а не 50%

Phoenix

порядок моих действий:
1) полез в гугл с запросами "пересобрать gcc freebsd" и тому подобными, ничего не нашёл. решил, что всё должно быть просто.
2) полез в /usr/src/gnu/usr.bin/gcc. там сделал make - он не сделался.
3) решил всё-таки сделать make buildworld, make installworld. при собранном ядре с поддержкой smp. всё собралось, но всё те же 50%
вообще, что делать я не знаю.
хотелось бы быстренько собрать gcc, без пересобирания всего-всего.
читаю http://www.freebsd.org/doc/en_US.ISO8859-1/books/developers-...
но там пока ничего нужного в этом вопросе не нашёл

SawavsOlja

Ничё не понял, но 50% изменяются на 100% через настройки в Биосе.

Saimedy

И не соберешь — GCC однопоточный. Лучшее, что можешь сделать, это вместо make писать
 make -j количество_процессоров 

sergey_m

Может у тебя больше одного процессора?

darin06

а может все-таки :
 make -j (количество_процессоров+1)   

garikus

с чего ты взял, что если пересобрать gcc, то он будет работать по-другому?
а вообще вот:
# cd /usr/src/gnu/usr.bin/cc
# make clean
# make obj
# make depend
# make all
# make install

Phoenix

athlon x2.

tokuchu

Когда top запустишь в следующий раз - нажми "1" и смотри как ядро проца грузится на 100%.

Phoenix

у меня в панельку встроен график.
вот он выше серединки не поднимается

tokuchu

Ну как уже заметили - просто 1 ядро только загружается. gcc не паралеллит свою работу. Для достижения полной загрузки можно запускать несколько параллельных задач. В случае с make можно использовать ключ "-j".

darin06

да, надо в данном двухпроцессорном случае запустить его с ключом
 -j 3  

Phoenix

вроде 2 хватает.
/usr/src без проблем собирается, НО
02 steel ...www/firefox(0/3)# make -j2
sed: /usr/ports/www/firefox/work/mozilla/build/unix/*.pc: No such file or directory
*** Error code 1
cannot create /usr/ports/www/firefox/work/mozilla/mozilla-config.h: No such file or directory
*** Error code 2
2 errors
это как понимать?
Оставить комментарий
Имя или ник:
Комментарий: