Компиляция gcc 3.2 на Ubuntu 16.04 (под компилятором gcc 5.4.0)

Я на Ubuntu 16.04 и уже установлен gcc-5.4.0.

Я пытаюсь создать компилятор gcc-3.2 в соответствии с этим учебником, поскольку мне нужно его скомпилировать glib-1.2.10, чтобы создать gtk-1.2.10, чтобы запустить программное обеспечение астрономии phoebe-0.29d.

Во время выполнения команды make для сборки компилятора gcc-3.2 я получаю следующие ошибки:

Makefile: 3282: не найден рецепт для target 'read-rtl.o' make1: *** [read-rtl.o] Ошибка 1 make1: Выход из каталога '/ home / bart / gobj / gcc' Makefile: 1601: рецепт для цели «all-gcc» не выполнен: *** [all-gcc ] Ошибка 2

Согласно этому учебнику , я должен применить два патча (gcc-3.2.patch и gcc-3.2-nofixincludes-2.patch), которые разрешают проблемы с несовместимостью макрокоманд между gcc версии, но нет ссылки для второй, которую я могу найти.

Любая помощь, применяющая исправления или построение «gcc-3.2», будет очень оценена.

0
задан 18 April 2017 в 21:12

4 ответа

Легче: получите старый package.deb → 1) gtk + 1.2 → http://old-releases.ubuntu.com/ubuntu/pool/main/g/gtk+1.2/ ... 2) glib1.2 → http://old-releases.ubuntu.com/ubuntu/pool/main/g/glib1.2/

Или используйте патчи: glib1.2_1.2.10-17build1.diff.gz, gtk+1.2_1.2.10-17build1.diff.gz из ссылок для компиляции с более поздний компилятор. Я только что сделал с gcc-4.9.2 (брал каждую минуту). Возможно также с Ubuntu 16.04. Доступно для 16.04: sudo apt install gcc-4.7 gcc-4.8 gcc-4.9

Howto build: (Но я бы просто установил два пакета_amd64.deb)

cd glib-1.2.10/
zcat glib1.2_1.2.10-17build1.diff.gz | patch -p1
export CC=gcc-4.9 && ./configure --prefix=/usr
make && sudo make install

cd gtk+-1.2.10/
zcat gtk+1.2_1.2.10-17build1.diff.gz | patch -p1
export CC=gcc-4.9 && ./configure --prefix=/usr
make && sudo make install

Имейте в виду, что вам может потребоваться использовать более раннюю версию gcc в Ubuntu 16.04: sudo apt install gcc-4.7. Команды экспорта затем export CC=gcc-4.7

0
ответ дан 22 May 2018 в 23:28
  • 1
    Привет большое спасибо за ваш ответ! Я установил gcc-4.9.2, но не могли бы вы рассказать мне, какие команды использовать именно для исправления glib и gtk + с .diff-файлами? Кроме того, для полноты файлов .deb более простой способ, который я должен использовать, это: libglib1.2_1.2.10-17build1_amd64.deb и libgtk1.2_1.2.10-17_amd64.deb? – K.Zer 19 April 2017 в 14:32
  • 2
    Я отредактировал anwer, чтобы включить сборку glib-1.2.10 и gtk + -1.2.10 – Knud Larsen 20 April 2017 в 23:50
  • 3
    Я действительно благодарю вас. Мне удалось установить glib1.2 и gtk + 1.2 из файлов deb, хотя на многих форумах они говорят, что это несовместимо с более новыми версиями Ubuntu. Хотя, сначала нужно было установить glib1.2.deb второй libgtk + 1.2-common.deb и, наконец, (потому что он имеет зависимость от common.deb) libgtk + 1.2.deb. В случае, если кому-то еще нужно установить старые программы на Ubuntu и нужна версия gtk + 1.2, рекомендуется также установить glib1.2-dev.deb и gtk + 1.2-dev.deb, так как в этом случае также устанавливается gtk-config и необходимы старые программы. – K.Zer 21 April 2017 в 02:52

Легче: получите старый package.deb → 1) gtk + 1.2 → http://old-releases.ubuntu.com/ubuntu/pool/main/g/gtk+1.2/ ... 2) glib1.2 → http://old-releases.ubuntu.com/ubuntu/pool/main/g/glib1.2/

Или используйте патчи: glib1.2_1.2.10-17build1.diff.gz, gtk+1.2_1.2.10-17build1.diff.gz из ссылок для компиляции с более поздний компилятор. Я только что сделал с gcc-4.9.2 (брал каждую минуту). Возможно также с Ubuntu 16.04. Доступно для 16.04: sudo apt install gcc-4.7 gcc-4.8 gcc-4.9

Howto build: (Но я бы просто установил два пакета_amd64.deb)

cd glib-1.2.10/ zcat glib1.2_1.2.10-17build1.diff.gz | patch -p1 export CC=gcc-4.9 && ./configure --prefix=/usr make && sudo make install cd gtk+-1.2.10/ zcat gtk+1.2_1.2.10-17build1.diff.gz | patch -p1 export CC=gcc-4.9 && ./configure --prefix=/usr make && sudo make install

Имейте в виду, что вам может потребоваться использовать более раннюю версию gcc в Ubuntu 16.04: sudo apt install gcc-4.7. Команды экспорта затем export CC=gcc-4.7

0
ответ дан 18 July 2018 в 14:41

Легче: получите старый package.deb → 1) gtk + 1.2 → http://old-releases.ubuntu.com/ubuntu/pool/main/g/gtk+1.2/ ... 2) glib1.2 → http://old-releases.ubuntu.com/ubuntu/pool/main/g/glib1.2/

Или используйте патчи: glib1.2_1.2.10-17build1.diff.gz, gtk+1.2_1.2.10-17build1.diff.gz из ссылок для компиляции с более поздний компилятор. Я только что сделал с gcc-4.9.2 (брал каждую минуту). Возможно также с Ubuntu 16.04. Доступно для 16.04: sudo apt install gcc-4.7 gcc-4.8 gcc-4.9

Howto build: (Но я бы просто установил два пакета_amd64.deb)

cd glib-1.2.10/ zcat glib1.2_1.2.10-17build1.diff.gz | patch -p1 export CC=gcc-4.9 && ./configure --prefix=/usr make && sudo make install cd gtk+-1.2.10/ zcat gtk+1.2_1.2.10-17build1.diff.gz | patch -p1 export CC=gcc-4.9 && ./configure --prefix=/usr make && sudo make install

Имейте в виду, что вам может потребоваться использовать более раннюю версию gcc в Ubuntu 16.04: sudo apt install gcc-4.7. Команды экспорта затем export CC=gcc-4.7

0
ответ дан 24 July 2018 в 20:27

Легче: получите старый package.deb → 1) gtk + 1.2 → http://old-releases.ubuntu.com/ubuntu/pool/main/g/gtk+1.2/ ... 2) glib1.2 → http://old-releases.ubuntu.com/ubuntu/pool/main/g/glib1.2/

Или используйте патчи: glib1.2_1.2.10-17build1.diff.gz, gtk+1.2_1.2.10-17build1.diff.gz из ссылок для компиляции с более поздний компилятор. Я только что сделал с gcc-4.9.2 (брал каждую минуту). Возможно также с Ubuntu 16.04. Доступно для 16.04: sudo apt install gcc-4.7 gcc-4.8 gcc-4.9

Howto build: (Но я бы просто установил два пакета_amd64.deb)

cd glib-1.2.10/ zcat glib1.2_1.2.10-17build1.diff.gz | patch -p1 export CC=gcc-4.9 && ./configure --prefix=/usr make && sudo make install cd gtk+-1.2.10/ zcat gtk+1.2_1.2.10-17build1.diff.gz | patch -p1 export CC=gcc-4.9 && ./configure --prefix=/usr make && sudo make install

Имейте в виду, что вам может потребоваться использовать более раннюю версию gcc в Ubuntu 16.04: sudo apt install gcc-4.7. Команды экспорта затем export CC=gcc-4.7

0
ответ дан 31 July 2018 в 23:30

Другие вопросы по тегам:

Похожие вопросы: