Кто нибудь делал ? Утыкается прямо сходу в отсутствие gnat, пакета которого вообще в слаке нет. Чтение мануала на сайте gcc способно ввести в глубокий транс :-), но больше из него ничего нельзя извлечь.
Пересборка gcc из 14 в 13.37
Ага, как же :-)Утыкается прямо сходу в отсутствие gnat, пакета которого вообще в слаке нет.
Slackware-14.0: d/gcc-gnat-4.7.1
Slackware-13.37: d/gcc-gnat-4.5.2
1) Нужно в 13.37 собрать gcc-4.7.1 или 4.7.2 ?
2) Достаточно ли замены системного gcc-4.5.2 на 4.7.1/4.7.2 ?
Ну так он и входит в состав gcc, и собирается в нем же. Но это не ада, а препроцессор по сути, насколько понял. Но для его компиляции нужна сама ада, которой в слаке нет.
Вполне хватит и 4.7.1.
Как то неохота просто всовывать новый gcc из 14 в 13.37. В теории можно словить самые разные неприятности.
Но для его компиляции нужна сама ада, которой в слаке нет.
могу посоветовать просто очень внимательно почитать slackware-current/ChangeLog.txt, а лучше какое-то время "посидеть" на slackware-current, суть в том, что тем или иным макаром, но таки придется повторить весь путь по сборке всего дистрибутива в его основе, так называемый "minimal-install". 4.7.Х ведь не с проста появился. Он был нужен для нормальной сборки большинства программ входящих в 14, но перед этим была проделана колоссальная работа по подготовке, на коленке это не осилить. Собрать-то может и соберёшь, но наверняка это будет жуткий уродец с сомнительной нужностью. Поставь уже 14-ю и не парься.
P.S. у меня где-то завалялось пара снапшотов промежуточной курент между 13.37 и 14, если интересно пиши в личку, будет время открою доступ, пока много работы, не до того.
Ну так мне и не надо пересобирать все, вполне хватит если новый gcc будет собирать новые проги, которые без него не собираются Таких прог пока довольно мало, но ведь их число будет только увеличиваться.
Кстати, у меня пересобран в 13.37 старым gcc из нее и glibc и qt и gtk и питон и много чего из 14, так что в 13.37 все основное из 14 вполне собирается и без нового gcc.
Ух и жруч он в сборке до диска-то, поставил в виртуалку собирать, 8Гб диска не хватило.
Перезарядил, посмотрим...
Да, жрет он порядком
Итого:
$ cat /etc/*version; uname -rm
Slackware 13.37.0
2.6.37.6-smp i686
$ ls -oh *t?z
-rw-r--r-- 1 root 13M Мар 13 02:02 gcc-4.7.2-i486-1.txz
-rw-r--r-- 1 root 5,2M Мар 13 02:03 gcc-g++-4.7.2-i486-1.txz
-rw-r--r-- 1 root 4,3M Мар 13 02:03 gcc-gfortran-4.7.2-i486-1.txz
-rw-r--r-- 1 root 11M Мар 13 02:04 gcc-gnat-4.7.2-i486-1.txz
-rw-r--r-- 1 root 7,8M Мар 13 02:06 gcc-go-4.7.2-i486-1.txz
-rw-r--r-- 1 root 23M Мар 13 02:05 gcc-java-4.7.2-i486-1.txz
-rw-r--r-- 1 root 3,6M Мар 13 02:06 gcc-objc-4.7.2-i486-1.txz
Немного статистики (ВМ в VirtualBox):
$ du -sh /mnt/tmp/gcc
4,1G
$ time ...
real 181m12.647s
user 160m20.223s
sys 13m33.948s
$ cat /proc/cpuinfo
model name : Intel(R) Core(TM) i3 CPU M 350 @ 2.27GHz
cpu MHz : 2245.780
cache size : 6144 KB
bogomips : 4491.56
По хорошему нужно поставить и пересобрать его же самим собой.
Выкладывать?
Выкладывать как есть?
Пересобрать и выложить?
Ччертовщина :-). То есть все собралось без каких то заминок ?
Спасибо, попробую все же сам пересобрать, поскольку там и glibc от 14.
Сколько он при сборке места на диске потребовал, хотя бы примерно ? У меня места не так уж и много, возможно придется на другом разделе пересобирать.
Thanks
Ну, если на 8 не влез, то на 16 - влезет точно :)
Да он жрет как не в себя :-) Пока не заткнулся на аде успел 10 гигов выжрать.
Да.все собралось без каких то заминок ?
Нет, оставлял родную от 13.37, glibc-2.13.поскольку там и glibc от 14
Вон там повыше писал, сборочный каталог (TMP=) после завершения сборки занял примерно 4,2Гб.Сколько он при сборке места на диске потребовал, хотя бы примерно ?
Там было 8 всего, это остаток был меньше 4.если на 8 не влез
Пересобрал самим собой, проверил некоторые бинарники/библиотеки -- байт в байт. Может оно в make уже учтено?
Тогда поставлю пересобирать
Нет, оставлял родную от 13.37, glibc-2.13.
Это у меня glibc от 14, поэтому и придется пересобирать у себя, от греха
Вон там повыше писал, сборочный каталог (TMP=) после завершения сборки занял примерно 4,2Гб.
Это уже после сборки, а в самом процессе ?
Пересобрал самим собой, проверил некоторые бинарники/библиотеки -- байт в байт. Может оно в make уже учтено?
Не знаю в чем там заковыка, попробую еще раз
В слакбилде "make clean" или другой какой очистки нигде не вижу, стало быть 4,2Гб должно хватить...Это уже после сборки, а в самом процессе ?
В слакбилде "make clean" или другой какой очистки нигде не вижу, стало быть 4,2Гб должно хватить...
Сплюнул и поставил пересобирать :-)
Thanks, еще раз