2015-10-29 86 views
0

使用RHEL6,內核版本2.6.32-573.3.1.el6.x86_64.編譯GCC-5.2.0在RHEL6的Ada語言支持:「要確保你正在使用gcc的一致版本/ gnatbind」

配置並沒有錯誤成功。在make install的過程,但是:

gcc -c -g -O2 -gnatpg -gnatwns -W -Wall -nostdinc -I- -I. -Iada/generated 
-Iada -I../../gcc-5.2.0/gcc/ada -I../../gcc-5.2.0/gcc/ada/gcc-interface 
../../gcc-5.2.0/gcc/ada/gnat1drv.adb -o ada/gnat1drv.o 

gnatbind -nostdinc -I- -I. -Iada/generated -Iada -I../../gcc-5.2.0/gcc/ada 
-I../../gcc-5.2.0/gcc/ada/gcc-interface -o b_gnat1.adb -n ada/gnat1drv.ali 

fatal error: file s-stalib.ali is incorrectly formatted 
make sure you are using consistent versions of gcc/gnatbind 

==================================

[[email protected] ~]# which gcc 
/usr/bin/gcc 
[[email protected] ~]# which gnatbind 
/usr/bin/gnatbind 

[[email protected] Notes]# gcc --version 
gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-16 
[[email protected] Notes]# gnatbind --version 
GNATBIND 4.4.7 20120313 (Red Hat 4.4.7-16) 

==================================

配置,製作,安裝製作都是從一個獨立的生成目錄,而不是源目錄

=================================執行=

wget http://mirrors-usa.go-parts.com/gcc/releases/gcc-5.2.0/gcc-5.2.0.tar.gz 
tar -xvf gcc-5.2.0.tar.gz 
mkdir gcc-5.2.0-build 
cd gcc-5.2.0-build 

==================================

../gcc-5.2.0/configure --prefix=/usr/local/pkg/gcc/5.2.0 \ 
         --enable-bootstrap \ 
         --enable-shared \ 
         --enable-threads=posix \ 
         --enable-checking=release \ 
         --with-system-zlib \ 
         --enable-__cxa_atexit \ 
         --enable-languages=c,c++,objc,obj-c++,java,fortran,ada,go \ 
         --enable-java-awt=gtk \ 
         --with-tune=generic \ 
         --with-arch_32=i686 \ 
         --build=x86_64-redhat-linux 2>&1 | tee CONFIGURE.OUT 

==== ==============================

我幾乎難倒這一點。在今年我們在同一臺服務器上安裝gcc 4.9.2時,我們使用了這些相同的配置選項(此後沒有重大更新或更改),並且沒有得到此錯誤。

我很高興地更新與任何其他信息這個問題,可能是相關的,請讓我知道。

+0

我不知道。但4.4.7是一個可疑的舊版本。如果你成功構建並安裝了gcc4.9.2,我建議使用它來構建gcc5.2而不是4.4。 –

+0

令人驚訝的是看到'make install'重建工具。這可能是路徑問題嗎?你可能試圖以root身份進行安裝 - 當你切換到root時,路徑是否改變? –

+0

@BrianDrummond謝謝,我會再次嘗試4.9.2。目前,我只是從--enable-languages行中刪除了「ada」。使安裝目前正在運行,似乎做得更好。在我們找出這個問題之前,必須給我們的用戶留下一個「Ada目前不受支持」的信息。 – CptSupermrkt

回答

0

可能是你4.4.7託管的gcc太舊,直接建立5.2.0。您應該嘗試構建第一個中間版本,比如說4.8.4,然後使用新建的編譯器構建5.2.0。我在Slackware上用4.7.1成功構建了5.2.0。

相關問題