Russian Qt Forum

Компиляторы и платформы => Компиляторы => Тема начата: Igors от Декабрь 11, 2009, 06:08



Название: gcc 4.4 (XCode)
Отправлено: Igors от Декабрь 11, 2009, 06:08
Здравствуйте

Потребовался мне компилятор gcc 4.4 (нужен для одной из библиотек). Но, к сожалению, он не идет вместе с XCode IDE (хотя заявлено что да, он работает с OSX и XCode), то есть надо его "ставить". Погуглил, максимум что нашел вот это http://gcc44.darwinports.com/ (http://gcc44.darwinports.com/). Просьба: хотя бы в самых общих чертах объясните о чем речь в этой инструкции. Что я должен делать чтобы поставить? (разумеется, сам gcc я скачал). Последнюю часть (про macports) я знаю, но воспользоваться не могу (по техническим причинам). Можно как-то по-другому?

Спасибо


Название: Re: gcc 4.4 (XCode)
Отправлено: niXman от Декабрь 11, 2009, 07:16
Я абсолютно не знаком с Мас, но очень знаком с *nix. Так вот, из исходников, компилятор собирается на ура. И скриптом устанавливается. Попробуй их сорцов собрать.


Название: Re: gcc 4.4 (XCode)
Отправлено: Igors от Декабрь 11, 2009, 07:38
Я абсолютно не знаком с Мас, но очень знаком с *nix. Так вот, из исходников, компилятор собирается на ура. И скриптом устанавливается. Попробуй их сорцов собрать.
Каким образом? Я пытался прорваться так:

- набрал ./configure  Он мне много написал в консоли. Ну наверное что-то сделал, ладно
- набрал make - он начал что-то делать но загнулся на genmodes: No such file..

Ну а дальше я не знаю что набирать :'(


Название: Re: gcc 4.4 (XCode)
Отправлено: niXman от Декабрь 11, 2009, 07:43
качаем:
ftp://gcc.gnu.org/pub/gcc/infrastructure/gmp-4.2.4.tar.bz2
ftp://gcc.gnu.org/pub/gcc/infrastructure/mpfr-2.4.1.tar.bz2
ftp://gd.tuwien.ac.at/gnu/gcc/releases/gcc-4.4.2/gcc-4.4.2.tar.bz2
ftp://gd.tuwien.ac.at/gnu/gcc/releases/gcc-4.4.2/gcc-g++-4.4.2.tar.bz2

собираем строго в этом порядке.
1. gmp
2. mpfr
3. gcc
4. gcc-g++

для каждого, в каталоге куда он распакован, выполняем следующее:
./configure && make && sudo make install

все)


Название: Re: gcc 4.4 (XCode)
Отправлено: niXman от Декабрь 11, 2009, 07:46
дополню.
в сумме, нужно собрать около 400 МБ исходников. так что если машина многоядерная, то команда такая:
./configure && make -j6 && sudo make install

где: -j6 кол-во ядер отданное на сборку.


Название: Re: gcc 4.4 (XCode)
Отправлено: niXman от Декабрь 11, 2009, 07:51
Кстати. genmodes - это helper для сборки. он также входит в: ftp://gd.tuwien.ac.at/gnu/gcc/releases/gcc-4.4.2/gcc-4.4.2.tar.bz2
с этим проблем быть не должно.


Название: Re: gcc 4.4 (XCode)
Отправлено: niXman от Декабрь 11, 2009, 07:55
Интереса ради, запустил сборку 4.4.2(по своей же инструкции). Пока все пучком ;)


Название: Re: gcc 4.4 (XCode)
Отправлено: Igors от Декабрь 11, 2009, 08:17
Интереса ради, запустил сборку 4.4.2(по своей же инструкции). Пока все пучком ;)
А у меня нет :)  Не проходит sudo make install - она спрашивает пароль но дальше ничего не происходит. Ввожу неверный пароль - понимает, отклоняет. Пробую make install (без sudo) - начинает что-то делать, но, конечно, получаю Permission denied

В любом случае - спасибо за помощь, niXman


Название: Re: gcc 4.4 (XCode)
Отправлено: niXman от Декабрь 11, 2009, 08:41
Все. Собрался и установился.

Цитировать
Не проходит sudo make install - она спрашивает пароль но дальше ничего не происходит
Покажите лог сборки целиком.


Название: Re: gcc 4.4 (XCode)
Отправлено: Igors от Декабрь 11, 2009, 14:51
Покажите лог сборки целиком.
Вот http://www.2shared.com/file/9896917/f2f65a59/Logs.html (http://www.2shared.com/file/9896917/f2f65a59/Logs.html)


Название: Re: gcc 4.4 (XCode)
Отправлено: niXman от Декабрь 11, 2009, 15:17
Из лога видно что GMP собрался без запиночки.

Цитировать
WARNING: Improper use of the sudo command could lead to data loss
or the deletion of important system files. Please double-check your
typing when using sudo. Type "man sudo" for more information.
Странное сообщение :)

Попробуйте без sudo


Название: Re: gcc 4.4 (XCode)
Отправлено: Igors от Декабрь 14, 2009, 18:29
Разобрался - оказывается виноват "пустой" пароль (как был у меня), так нельзя. Вообще-то конечно милая "никсовская" шутка если не считать 2 дней на гугление и поиск методом втыка :)

Получил новое (при ./configure для gcc)

Цитировать
checking for correct version of gmp.h... yes
checking for correct version of mpfr.h... no
configure: error: Building GCC requires GMP 4.1+ and MPFR 2.3.2+.

mpfr отинсталлировал и имею usr/local/include/mpfr.h
В котором ясно написано: версия 2.4.1
Нагуглил похожее http://www.mail-archive.com/gcc-bugs@gcc.gnu.org/msg260531.html (http://www.mail-archive.com/gcc-bugs@gcc.gnu.org/msg260531.html)

Пытаюсь понять о чем речь :)


Название: Re: gcc 4.4 (XCode)
Отправлено: niXman от Декабрь 14, 2009, 20:24
Дело может быть в том, что сама либа устанавливается от имени одного пользователя(к примеру рядового юзера), а скрипт конфигурации, к примеру от имени рута. или на оборот.


Название: Re: gcc 4.4 (XCode)
Отправлено: Igors от Декабрь 14, 2009, 21:01
Дело может быть в том, что сама либа устанавливается от имени одного пользователя(к примеру рядового юзера), а скрипт конфигурации, к примеру от имени рута. или на оборот.
Никогда не видел никаких др. пользователей кроме себя  :) Гуглю, проблема популярная но что делать никто толком не говорит..


Название: Re: gcc 4.4 (XCode)
Отправлено: niXman от Декабрь 14, 2009, 21:47
А в Мас есть пользователь root ?


Название: Re: gcc 4.4 (XCode)
Отправлено: Dendy от Декабрь 14, 2009, 21:53
А в Мас есть пользователь root ?

Да.


Название: Re: gcc 4.4 (XCode)
Отправлено: niXman от Декабрь 14, 2009, 22:00
Значит в вопрос я все же поставил корректно.


Название: Re: gcc 4.4 (XCode)
Отправлено: Igors от Декабрь 15, 2009, 06:36
Ага, "есть анодное!" (после того как я прекратил гуглить и попытался понять что пишут make, configure). Для gmp надо указать

./configure ABI=32

Иначе он создает 64-битную gmp которую mpfr "не может найти". При этом однако сам mpfr успешно инсталлится и проблема возникает уже на configure gcc
Мдааа...


Название: Re: gcc 4.4 (XCode)
Отправлено: Igors от Декабрь 17, 2009, 16:56
Добрый день

Просто чтобы "закруглить" тему. Компилятор успешно инсталлирован. Другое дело что я не смог заставить его работать с Xcode.

(хотя заявлено что да, он работает с OSX и XCode)

Я был неправ, про Xcode никто ничего не обещал, и, насколько мне известно, та же ситуация в OSX 10.6, говорят Apple делает упор на LLVM версии gcc.  Нельзя добавить 4.4 в список компиляторов Xcode. Сделать его внешним компилятором можно, но он не понимает нескольких опций командной строки (arch и.т.п). Говорят что можно сделать через External BUild и makefile, но это для меня сложновато :)

Однако библиотека OpenMP (для чего мне все это понадобилось) успешно поставилась и работает с gcc 4.2 - так что задача решена. Еще раз спасибо niXman за помощь.