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