在Ubuntu 16.04上编译gcc 3.2(编译器gcc 5.4.0下)

在Ubuntu 16.04上编译gcc 3.2(编译器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: recipe for target 'read-rtl.o' failed
make[1]: *** [read-rtl.o] Error 1
make[1]: Leaving directory '/home/bart/gobj/gcc'
Makefile:1601: recipe for target 'all-gcc' failed
make: *** [all-gcc] Error 2

根据本教程,我必须应用两个补丁(gcc-3.2.patchgcc-3.2-nofixincludes-2.patch)来解决版本之间宏命令不兼容的问题gcc,但我找不到第二个补丁的链接。

任何有关应用补丁或构建“gcc-3.2”的帮助都将不胜感激。

答案1

更简单:获取旧的 packages.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.gzgtk+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


如何构建:(但我只会安装两个 packages_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

请注意,您可能必须在 Ubuntu 16.04 中使用较早版本的 gcc:。sudo apt install gcc-4.7然后是导出命令export CC=gcc-4.7

相关内容