更新:我從http://ftp.ntct.edu.tw/Linux/ISO/Debian/3.0r2/得到了Debian 3.0r2的一個副本 這包含gcc 2.95.4,這是完美的。將它安裝在VirtualBox中,現在一切都與世界一致。 :)構建gcc-2.95.3在64位Ubuntu上使用9.10
ORIGINAL:
我試圖建立在我的機器上使用GCC 2.95.3的副本,我有一個非常艱難的時刻。
我購買了一本我經歷過的書,它是從2002年開始的。它希望我編譯許多示例以查看C編譯器提供的組件。本書使用gcc 2.95.3。我的系統上的gcc是4.x,更不用說64位了,所以程序集生成的外觀幾乎與本書中的例子一樣。
我已經試過一切,使gcc 2.95.3在我的機器上工作。我甚至使用VirtualBox安裝了較舊的32位Linux發行版,但不能讓我編譯它。
目前,我的機器上這裏是我在做什麼:
./configure --host=i386-amd-linux-gnu
make
它來臨時幾分鐘後,就與此出現:
make[2]: Entering directory `/home/twilson/Downloads/gcc-2.95.3/gcc/ch'
gcc -c -DIN_GCC -g -O2 -I. -I.. -I. -I./.. -I./../config -I./../../include parse.c
parse.c: In function ‘require’:
parse.c:326: warning: format not a string literal and no format arguments
parse.c: In function ‘expect’:
parse.c:352: warning: format not a string literal and no format arguments
gcc -c -DIN_GCC -g -O2 -I. -I.. -I. -I./.. -I./../config -I./../../include actions.c
gcc -c -DIN_GCC -g -O2 -I. -I.. -I. -I./.. -I./../config -I./../../include except.c
gcc -c -DIN_GCC -g -O2 -I. -I.. -I. -I./.. -I./../config -I./../../include grant.c
gcc -c -DIN_GCC -g -O2 -I. -I.. -I. -I./.. -I./../config -I./../../include lang.c
gcc -c -DIN_GCC -g -O2 -I. -I.. -I. -I./.. -I./../config -I./../../include tree.c
gcc -c -DIN_GCC -g -O2 -I. -I.. -I. -I./.. -I./../config -I./../../include lex.c
gcc -c -DIN_GCC -g -O2 -I. -I.. -I. -I./.. -I./../config -I./../../include decl.c
decl.c: In function ‘start_struct’:
decl.c:4451: error: argument ‘code’ doesn’t match prototype
ch-tree.h:736: error: prototype declaration
make[2]: *** [decl.o] Error 1
make[2]: Leaving directory `/home/twilson/Downloads/gcc-2.95.3/gcc/ch'
make[1]: *** [cc1chill] Error 2
make[1]: Leaving directory `/home/twilson/Downloads/gcc-2.95.3/gcc'
make: *** [all-gcc] Error 2
似乎沒有不管我做什麼,總會有一個錯誤或另一個錯誤。這和我一直很接近(我假設,因爲這是編譯時間最長的一段時間沒有停止)。
我不是配置或製作方面的專家,或者使用較舊的軟件。我只做了很多年的網絡相關的東西,而且我很晚才進入這個低級別的遊戲。
有沒有人試圖最近做到這一點,併成功或知道爲什麼會發生這種情況?
感謝, 湯姆
你真的想看到彙編輸出嗎? – Spaceghost 2011-01-27 02:50:32