Sender: M DOT A DOT Bukin AT inp DOT nsk DOT su To: djgpp AT delorie DOT com Subject: Re: GCC 2.8 References: <3 DOT 0 DOT 16 DOT 19980209123123 DOT 3e4f5e24 AT hem1 DOT passagen DOT se> Reply-To: M DOT A DOT Bukin AT inp DOT nsk DOT su From: M DOT A DOT Bukin AT inp DOT nsk DOT su Date: 10 Feb 1998 02:31:54 +0600 In-Reply-To: Peter Palotas's message of Mon, 09 Feb 1998 12:35:43 -0500 Message-Id: <20ra5czfid.fsf@Sky.inp.nsk.su> Lines: 58 Precedence: bulk Peter Palotas writes: > How are things going with the porting of GCC 2.8.0? (Or are there newer > versions by now?) I have tried to add support for DJGPP into gcc2.8.0. As I have no time now to improve or test it, I decided to provide current information for others. URLs: http://www.inp.nsk.su/~bukinm/gcc280/diffs.gz http://www.inp.nsk.su/~bukinm/gcc280/djgpp.gz First one is diffs from original gcc2.8.0. Second one contains some information on my djgpp.env (might be useful). There are no instructions, so I'll give them here: I used win95 with LFN=y, it might not work with DOS. Start bash (everything else is in bash): > djtarx gcc-2.8.0.tar.gz > cd gcc-2.8.0 > patch -p1 < ../diffs > CONFIG_SHELL=bash ./configure It should choose `i386-pc-msdosdjgpp' target. Edit djgpp.env and add section for xgcc (to use xgcc for building). > make CFLAGS=-O2 LANGUAGES="c c++ objc" Copy resulting executables and libraries to their places (if there are any executables and libraries). gcc.exe, cc1*.exe, cpp.exe, g++.exe, libgcc.a, libobjc.a, objc/some-of.h (what else?). Instead of editing djgpp.env and adding [xgcc] section, you can try this: > make CFLAGS=-O2 LANGUAGES=c GCC_FOR_TARGET=gcc But using it this way, I think it won't build c++ and/or objective-c (and I'm not sure if it is `GCC_FOR_TARGET' or other option). Notes: I have tried C and C++ with little test programs and had no problems (but tests were small and I have not used exceptions, rtti... for C++). It seems that ObjC is not working. It compiles simple program, but when executing hello-world with ObjC, it says "assertion failed. Abort!". Built-in specs is correct (I think), but it has no specialized `link_command' section, so gcc does not call stubify explicitely, though it produces stubbed exe anyway. Probably it can be changed by setting EXTRA_SPECS (or SUBTARGET_EXTRA_SPECS) in config/i386/djgpp.h, but I haven't tried it and I don't like that idea. BTW, the idea of making this port was to get easy to build cross-compiler (something->djgpp), but I have not tried to built it as cross-compiler yet. I hope it will help to add DJGPP support for gcc 2.8.x.