From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,FREEMAIL_FROM autolearn=ham autolearn_force=no version=3.4.4 X-Google-Thread: a07f3367d7,e085b6e4ce0fef39 X-Google-Attributes: gida07f3367d7,public,usenet X-Google-NewGroupId: yes X-Google-Language: ENGLISH,ASCII Path: g2news2.google.com!news4.google.com!proxad.net!feeder1-2.proxad.net!usenet-fr.net!gegeweb.org!aioe.org!not-for-mail From: =?iso-8859-15?Q?Yannick_Duch=EAne_=28Hibou57=29?= Newsgroups: comp.lang.ada Subject: Re: Gnat cross compiler Date: Thu, 20 May 2010 17:49:20 +0200 Organization: Ada At Home Message-ID: References: <4166ab6d-ff7f-4c7c-b8c2-fdf4e371b414@l6g2000vbo.googlegroups.com> NNTP-Posting-Host: QgHLs5XqnJEdNZrCkJ6IIg.user.speranza.aioe.org Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-15; format=flowed; delsp=yes Content-Transfer-Encoding: Quoted-Printable X-Complaints-To: abuse@aioe.org X-Notice: Filtered by postfilter v. 0.8.2 User-Agent: Opera Mail/10.53 (Win32) Xref: g2news2.google.com comp.lang.ada:11806 Date: 2010-05-20T17:49:20+02:00 List-Id: Le Thu, 20 May 2010 16:29:06 +0200, Alexis = a =E9crit: > Hi, > > I've spent some time trying to build a gcc Ada cross compiler for i686= - > elf target (well, a c,c++,ada compiler). I'm working on Windows with > Cygwin 1.7 and gcc 4.3.4 binaries and sources. I'm following the > procedure on: http://wiki.osdev.org/GCC_Cross-Compiler#Step_1_-_Bootst= rap > > So far GCC and libgcc have been built fine, but when I try to use i686= - > elf-gcc to compile an Ada program I get the following error: > > $ i686-elf-gcc -c hello.adb > fatal error, run-time library not installed correctly > cannot locate file system.ads > compilation abandoned > > Thinking that this might solve the problem I've tried to build libada > following the same procedure for libgcc (make all-target-libada), only= > to get multiple compilation errors such as (extract for a much larger > log): I could create one for Windows -> Linux (Windows -> Mac still pending), = = using MinGW. What I can say: there is a --with-sysroot option in the configuration. Y= ou = must care a lot about what is contained in the directory you pass as the= = --with-sysroot option. There may also be troubles due to the differences= = of the directory structure on Windows compared to the one of = Linux/UNIX-like... but I guess the latter should not be a trouble with = Cygwin. I would like to advice to check twice all of what is related to sysroot = or = to --includedir or --libdir, if you use these. Cannot tell more, as this would be too much work otherwise (building a = cross compiler is really not a piece of cake) Wish you to succeed -- = There is even better than a pragma Assert: a SPARK --# check.