http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57795

            Bug ID: 57795
           Summary: Fail cross building Ada
           Product: gcc
           Version: unknown
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: ada
          Assignee: unassigned at gcc dot gnu.org
          Reporter: alexpux at gmail dot com

I try to build i686 multilib mingw toolchain with Ada from linux x86_64
toolchain.
First I build cross-compiler linux-x64 -> mingw-x32. Next I try to build
mingw-x32 native toolchain from cross and get fail building libada on last
step.

make[2]: Entering directory `/home/alexx/work32/mingw32-gcc/gnattools'
# gnattools1-re
make -C ../gcc/ada/tools -f ../Makefile \
  "CC=i686-w64-mingw32-gcc" "CFLAGS=-g -O2 -D__USE_MINGW_ACCESS -W -Wall"
"LDFLAGS=-static-libstdc++ -static-libgcc -Wl,--stack,12582912"
"ADAFLAGS=-gnatpg -gnata" "ADA_CFLAGS=" "INCLUDES=-I. -I.. -I../..
-I/home/alexx/src/gcc-4.8.1/gcc/ada -I/home/alexx/src/gcc-4.8.1/gcc/config
-I/home/alexx/src/gcc-4.8.1/gcc/../include -I/home/alexx/src/gcc-4.8.1/gcc"
"ADA_INCLUDES=-I/usr/lib/gcc/x86_64-unknown-linux-gnu/4.8.1/adalib/../adainclude
-I/usr/lib/gcc/x86_64-unknown-linux-gnu/4.8.1/adalib/ -I.
-I/home/alexx/src/gcc-4.8.1/gcc/ada" "exeext=.exe"
"fsrcdir=/home/alexx/src/gcc-4.8.1/gcc" "srcdir=/home/alexx/src/gcc-4.8.1/gcc"
"GNATMAKE=gnatmake" "GNATLINK=gnatlink" "GNATBIND=gnatbind" "TOOLSCASE=cross"
"LIBGNAT=" INCLUDES="" \
  gnatmake-re gnatlink-re
make[3]: Entering directory `/home/alexx/work32/mingw32-gcc/gcc/ada/tools'
gnatmake -j0 -I/usr/lib/gcc/x86_64-unknown-linux-gnu/4.8.1/adalib/../adainclude
-I/usr/lib/gcc/x86_64-unknown-linux-gnu/4.8.1/adalib/ -I.
-I/home/alexx/src/gcc-4.8.1/gcc/ada -u sdefault --GCC="i686-w64-mingw32-gcc "
gnatmake: objects up to date.
gnatmake -j0 -c
-I/usr/lib/gcc/x86_64-unknown-linux-gnu/4.8.1/adalib/../adainclude
-I/usr/lib/gcc/x86_64-unknown-linux-gnu/4.8.1/adalib/ -I.
-I/home/alexx/src/gcc-4.8.1/gcc/ada gnatmake --GCC="i686-w64-mingw32-gcc -g -O2
-D__USE_MINGW_ACCESS -W -Wall  -gnatpg -gnata"
i686-w64-mingw32-gcc -c -I./
-I/usr/lib/gcc/x86_64-unknown-linux-gnu/4.8.1/adalib/../adainclude
-I/usr/lib/gcc/x86_64-unknown-linux-gnu/4.8.1/adalib/ -I.
-I/home/alexx/src/gcc-4.8.1/gcc/ada -g -O2 -D__USE_MINGW_ACCESS -W -Wall
-gnatpg -gnata -I- /home/alexx/src/gcc-4.8.1/gcc/ada/osint.adb
i686-w64-mingw32-gcc -c -I./
-I/usr/lib/gcc/x86_64-unknown-linux-gnu/4.8.1/adalib/../adainclude
-I/usr/lib/gcc/x86_64-unknown-linux-gnu/4.8.1/adalib/ -I.
-I/home/alexx/src/gcc-4.8.1/gcc/ada -g -O2 -D__USE_MINGW_ACCESS -W -Wall
-gnatpg -gnata -I- /home/alexx/src/gcc-4.8.1/gcc/ada/prj.adb
osint.adb:3182:07: warning: types for unchecked conversion have different sizes
gnatmake: "/home/alexx/src/gcc-4.8.1/gcc/ada/osint.adb" compilation error
make[3]: *** [gnatmake-re] Error 4
make[3]: Leaving directory `/home/alexx/work32/mingw32-gcc/gcc/ada/tools'
make[2]: *** [gnattools-cross] Error 2
make[2]: Leaving directory `/home/alexx/work32/mingw32-gcc/gnattools'
make[1]: *** [all-gnattools] Error 2
make[1]: Leaving directory `/home/alexx/work32/mingw32-gcc'
make: *** [all] Error 2

I see that gcc got wrong headers and libs
(I/usr/lib/gcc/x86_64-unknown-linux-gnu/4.8.1/adalib/../adainclude
-I/usr/lib/gcc/x86_64-unknown-linux-gnu/4.8.1/adalib/) from linux native
toolchain. But it can be pointed to headers and libs from cross toolchain.
I do this operation with different gcc - 4.7.3 and 4.8.1 with the same result.
My dirty hack to resolve it is to copy ada headers and libs from cross
toolchain to native toolchain. Then build finishing fine.


Regards,
Alexey.

Reply via email to