[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Fwd: Building PPC Ada cross compiler (cygwin) usung gcc 3.4.3]



Avy Strominger wrote:
Hello all.

I'm trying to build a powerPC cross Ada compiler, using GCC 3.4.3. during the gnatlib compilation (make -C gcc gnatlib), the build fails in the following way (this is the rebuilt log, so there are 'target is up to date messages for all targets that made it on the first time):

make: Entering directory `/cygdrive/d/c-dev/tools/b-gcc/gcc'
make -C ada "BISON=bison" "BISONFLAGS=" "CFLAGS=-g -W -Wall
-Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -pedantic
-Wno-long-long " "LDFLAGS=" "FLEX=flex" "FLEXFLAGS=" "LN=ln"
"LN_S=ln -s" "MAKEINFO=makeinfo" "MAKEINFOFLAGS=--no-split"
"MAKEOVERRIDES=" "SHELL=/bin/sh" "exeext=.exe" "build_exeext=.exe"
"objext=.o" "exec_prefix=/usr/local" "prefix=/usr/local"
"local_prefix=/usr/local"
"gxx_include_dir=/usr/local/lib/gcc/powerpc-rtems/3.4.3/include/c++"
"build_tooldir=/usr/local/powerpc-rtems"
"gcc_tooldir=/usr/local/lib/gcc/powerpc-rtems/3.4.3/../../../../powerpc-rtems"


"bindir=/usr/local/bin"
"libexecsubdir=/usr/local/lib/gcc/powerpc-rtems/3.4.3"
"datadir=/usr/local/share" "localedir=/usr/local/share/locale"
"CC=gcc" "STAGE_PREFIX=" \
GNATLIBFLAGS="-W -Wall -gnatpg" \
GNATLIBCFLAGS="-g -O2" \
TARGET_LIBGCC2_CFLAGS="" \
THREAD_KIND="native" \
TRACE="no" \
gnatlib
make[1]: Entering directory `/cygdrive/d/c-dev/tools/b-gcc/gcc/ada'
make -C rts CC="../../xgcc -B../../" \
INCLUDES="-I. -I.. -I../..
-I/cygdrive/d/c-dev/tools/gcc-3.4.3/gcc/ada
-I/cygdrive/d/c-dev/tools/gcc-3.4.3/gcc/ada/../config
-I/cygdrive/d/c-dev/tools/gcc-3.4.3/gcc/ada/../../include
-I/cygdrive/d/c-dev/tools/gcc-3.4.3/gcc/ada/.. -I./../.." \
CFLAGS="-g -O2 -fexceptions -DIN_RTS" \
srcdir=/cygdrive/d/c-dev/tools/gcc-3.4.3/gcc/ada \
-f ../Makefile adaint.o argv.o cio.o cstreams.o ctrl_c.o
errno.o exit.o raise.o sysdep.o aux-io.o init.o cal.o final.o
tracebak.o expect.o mkdir.o socket.o
make[2]: Entering directory `/cygdrive/d/c-dev/tools/b-gcc/gcc/ada/rts'
make[2]: `adaint.o' is up to date.
make[2]: `argv.o' is up to date.
make[2]: `cio.o' is up to date.
make[2]: `cstreams.o' is up to date.
make[2]: `ctrl_c.o' is up to date.
make[2]: `errno.o' is up to date.
make[2]: `exit.o' is up to date.
make[2]: `raise.o' is up to date.
make[2]: `sysdep.o' is up to date.
make[2]: `aux-io.o' is up to date.
make[2]: `init.o' is up to date.
make[2]: `cal.o' is up to date.
make[2]: `final.o' is up to date.
make[2]: `tracebak.o' is up to date.
make[2]: `expect.o' is up to date.
make[2]: `mkdir.o' is up to date.
make[2]: `socket.o' is up to date.
make[2]: Leaving directory `/cygdrive/d/c-dev/tools/b-gcc/gcc/ada/rts'
make -C rts CC="../../xgcc -B../../" \
ADA_INCLUDES="" \
CFLAGS="-g -O2" \
ADAFLAGS="-W -Wall -gnatpg" \
srcdir=/cygdrive/d/c-dev/tools/gcc-3.4.3/gcc/ada \
-f ../Makefile \
a-caldel.o a-calend.o a-chahan.o a-charac.o a-chlat1.o
a-chlat9.o a-colien.o a-colire.o a-comlin.o a-cwila1.o a-cwila9.o
a-decima.o a-diocst.o a-direio.o a-einuoc.o a-elchha.o a-except.o
a-exctra.o a-filico.o a-finali.o a-flteio.o a-fwteio.o a-inteio.o
a-ioexce.o a-iwteio.o a-lfteio.o a-lfwtio.o a-liteio.o a-liwtio.o
a-llftio.o a-llfwti.o a-llitio.o a-lliwti.o a-ncelfu.o a-ngcefu.o
a-ngcoty.o a-ngelfu.o a-nlcefu.o a-nlcoty.o a-nlelfu.o a-nllcef.o
a-nllcty.o a-nllefu.o a-nscefu.o a-nscoty.o a-nselfu.o a-nucoty.o
a-nudira.o a-nuelfu.o a-nuflra.o a-numaux.o a-numeri.o a-sequio.o
a-sfteio.o a-sfwtio.o a-siocst.o a-siteio.o a-siwtio.o a-ssicst.o
a-ssitio.o a-ssiwti.o a-stmaco.o a-storio.o a-strbou.o a-stream.o
a-strfix.o a-string.o a-strmap.o a-strsea.o a-strsup.o a-strunb.o
a-ststio.o a-stunau.o a-stwibo.o a-stwifi.o a-stwima.o a-stwise.o
a-stwisu.o a-stwiun.o a-suteio.o a-swuwti.o a-swmwco.o a-tags.o
a-teioed.o a-textio.o a-ticoau.o a-ticoio.o a-tideau.o a-tideio.o
a-tienau.o a-tienio.o a-tifiio.o a-tiflau.o a-tiflio.o a-tigeau.o
a-tiinau.o a-tiinio.o a-timoau.o a-timoio.o a-tiocst.o a-titest.o
a-unccon.o a-uncdea.o a-witeio.o a-wtcoau.o a-wtcoio.o a-wtcstr.o
a-wtdeau.o a-wtdeio.o a-wtedit.o a-wtenau.o a-wtenio.o a-wtfiio.o
a-wtflau.o a-wtflio.o a-wtgeau.o a-wtinau.o a-wtinio.o a-wtmoau.o
a-wtmoio.o a-wttest.o ada.o calendar.o g-arrspl.o g-awk.o g-bubsor.o
g-busora.o g-busorg.o g-calend.o g-casuti.o g-catiio.o g-cgi.o
g-cgicoo.o g-cgideb.o g-comlin.o g-comver.o g-crc32.o g-ctrl_c.o
g-curexc.o g-debuti.o g-debpoo.o g-diopit.o g-dirope.o g-dyntab.o
g-except.o g-excact.o g-exctra.o g-expect.o g-flocon.o g-heasor.o
g-hesora.o g-hesorg.o g-htable.o g-io.o g-io_aux.o g-locfil.o
g-md5.o g-memdum.o g-moreex.o g-os_lib.o g-perhas.o g-pehage.o
g-regexp.o g-regpat.o g-sestin.o g-soccon.o g-socket.o g-socthi.o
g-soliop.o g-souinf.o g-speche.o g-spipat.o g-spitbo.o g-sptabo.o
g-sptain.o g-sptavs.o g-string.o g-strspl.o g-table.o g-tasloc.o
g-traceb.o g-wistsp.o gnat.o i-c.o i-cexten.o i-cobol.o i-cpoint.o
i-cpp.o i-cstrea.o i-cstrin.o i-fortra.o i-pacdec.o interfac.o
ioexcept.o machcode.o s-addima.o s-arit64.o s-assert.o s-atacco.o
s-auxdec.o s-bitops.o s-boarop.o s-carsi8.o s-carun8.o s-casi16.o
s-casi32.o s-casi64.o s-casuti.o s-caun16.o s-caun32.o s-caun64.o
s-chepoo.o s-crtl.o s-crc32.o s-direio.o s-errrep.o s-except.o
s-exctab.o s-exnint.o s-exnllf.o s-exnlli.o s-expint.o s-explli.o
s-expllu.o s-expmod.o s-expuns.o s-fatflt.o s-fatgen.o s-fatlfl.o
s-fatllf.o s-fatsfl.o s-ficobl.o s-fileio.o s-finimp.o s-finroo.o
s-fore.o s-geveop.o s-htable.o s-imgbiu.o s-imgboo.o s-imgcha.o
s-imgdec.o s-imgenu.o s-imgint.o s-imgllb.o s-imglld.o s-imglli.o
s-imgllu.o s-imgllw.o s-imgrea.o s-imguns.o s-imgwch.o s-imgwiu.o
s-io.o s-gloloc.o s-maccod.o s-mantis.o s-mastop.o s-osprim.o
s-pack03.o s-pack05.o s-pack06.o s-pack07.o s-pack09.o s-pack10.o
s-pack11.o s-pack12.o s-pack13.o s-pack14.o s-pack15.o s-pack17.o
s-pack18.o s-pack19.o s-pack20.o s-pack21.o s-pack22.o s-pack23.o
s-pack24.o s-pack25.o s-pack26.o s-pack27.o s-pack28.o s-pack29.o
s-pack30.o s-pack31.o s-pack33.o s-pack34.o s-pack35.o s-pack36.o
s-pack37.o s-pack38.o s-pack39.o s-pack40.o s-pack41.o s-pack42.o
s-pack43.o s-pack44.o s-pack45.o s-pack46.o s-pack47.o s-pack48.o
s-pack49.o s-pack50.o s-pack51.o s-pack52.o s-pack53.o s-pack54.o
s-pack55.o s-pack56.o s-pack57.o s-pack58.o s-pack59.o s-pack60.o
s-pack61.o s-pack62.o s-pack63.o s-parame.o s-parint.o s-pooglo.o
s-pooloc.o s-poosiz.o s-powtab.o s-purexc.o s-rident.o s-rpc.o
s-scaval.o s-secsta.o s-sequio.o s-shasto.o s-sopco3.o s-sopco4.o
s-sopco5.o s-stache.o s-stalib.o s-stoele.o s-stopoo.o s-stratt.o
s-strops.o s-soflin.o s-memory.o s-memcop.o s-traceb.o s-traces.o
s-traent.o s-unstyp.o s-vaflop.o s-valboo.o s-valcha.o s-valdec.o
s-valenu.o s-valint.o s-vallld.o s-vallli.o s-valllu.o s-valrea.o
s-valuns.o s-valuti.o s-valwch.o s-veboop.o s-vector.o s-vercon.o
s-vmexta.o s-wchcnv.o s-wchcon.o s-wchjis.o s-wchstw.o s-wchwts.o
s-widboo.o s-widcha.o s-widenu.o s-widlli.o s-widllu.o s-widwch.o
s-wwdcha.o s-wwdenu.o s-wwdwch.o system.o text_io.o a-dynpri.o
a-interr.o a-intsig.o a-intnam.o a-reatim.o a-retide.o a-sytaco.o
a-tasatt.o a-taside.o g-boubuf.o g-boumai.o g-semaph.o g-signal.o
g-thread.o s-asthan.o s-inmaop.o s-interr.o s-intman.o s-osinte.o
s-proinf.o s-taenca.o s-taprob.o s-taprop.o s-tarest.o s-tasdeb.o
s-tasinf.o s-tasini.o s-taskin.o s-taspri.o s-tasque.o s-tasres.o
s-tasren.o s-tassta.o s-tasuti.o s-taasde.o s-tadeca.o s-tadert.o
s-tataat.o s-tpinop.o s-tpoben.o s-tpobop.o s-tposen.o s-tratas.o g-trasym.o memtrack.o
make[2]: Entering directory `/cygdrive/d/c-dev/tools/b-gcc/gcc/ada/rts'


   ...  quite a long series of successful compilations ....

   ../../xgcc -B../../ -c -g -O2      -W -Wall -gnatpg  s-taprop.adb -o
   s-taprop.o
   s-taprop.adb:113:04: warning: "ATCB_Key" is never assigned a value
   s-tpopsp.adb:59:07: warning: "Result" is never assigned a value
   s-tpopsp.adb:79:07: warning: "Result" is never assigned a value
   make[2]: *** [s-taprop.o] Error 1
   make[2]: Leaving directory `/cygdrive/d/c-dev/tools/b-gcc/gcc/ada/rts'
   make[1]: *** [gnatlib] Error 2
   make[1]: Leaving directory `/cygdrive/d/c-dev/tools/b-gcc/gcc/ada'
   make: *** [gnatlib] Error 2
   make: Leaving directory `/cygdrive/d/c-dev/tools/b-gcc/gcc'

The warnings line numbers do not relate to any meaningful contents of s-taprop.adb. Also, there is no s-taprop.o, although these are only warnings, not errors. s-taprop.adb is actualy 7staprop.adb.
Any Ideas? Help?
I've read the previous correspondance on the list, cyting 3.2.3 as the last version of GCC that was able to successfuly build an Ada cross compiler. However, I do not have an 3.2.x native Ada compiler, and trying to build gcc 3.2.3 with the 3.4.1 host compiler that I have 'naturaly' fails (because of the known and dreaded Ada backward incompatibility issue)

This is fixed in the 4.x source. Search for "No_Key" in ada/*rtems* and you will see how to get around this one.

Thanks to Arnaud for the tip. :)

There is an page on building gnat on the RTEMS Wiki.

With the 4.x source, the next issue is to get the RTS build to know where newlib is so you don't have to install C before attempting Ada.

Thanks.
Avy Strominger
astrominger@yahoo.com



--
Joel Sherrill, Ph.D.             Director of Research & Development
joel@OARcorp.com                 On-Line Applications Research
Ask me about RTEMS: a free RTOS  Huntsville AL 35805
   Support Available             (256) 722-9985