Message-Id: <355BF03E.792B90E1@student.utwente.nl> Date: Fri, 15 May 1998 09:35:27 +0200 From: Bart Kupers Mime-Version: 1.0 To: andrewc AT rosemail DOT rose DOT hp DOT com, djgpp AT delorie DOT com Subject: Re: cross compiling with DJGPP to a m68k-target References: <199805141711 DOT AA161155914 AT typhoon DOT rose DOT hp DOT com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Precedence: bulk Note: Although this message is addressed to Andy Crabtree help from everybody else out there is greatly appreciated. Hi Andy, Thanks for your quick response, since I was (am) getting a little desperate. > > Now I want to compile to m68k code. > OK. > > > According to the > > DJGPP-faq, chapter 22.7, this should be possible. > It is. > > > Unfortunatelly the faq > > does not explain in detail how to set up the various files found at the > > ftp-site mentioned. > I take it then that you have found precompiled binaries and are not > building from source. Correct. > > > > I have just downloaded al files and exchanged my > > original files (gcc, ld, ar etc..) with these files. > OK - Sounds good. Soon you will be able to *easily* have multiple > versions of the compiler targeting different platforms installed > simultaneously. How and when? Is somebody working on an improved DJGPP to include this option? > > When I try to use gpp-m68k to link the opject code to produce an > > executable I get several error messages: > > "C:/djgpp/bin/ld.exe: warning: m68k:68020 architecture of input file > > 'test.o' incomatible with i386 output" > OK. This sounds like you have the compiler (cc1) and the assembler (as) > working properly. But your linker appears to be a 386 linker. When > debugging install things you should always include '-v' on your > compile line. Try the following > > 1) 'as --version' It reports: GNU assembler version 2.6 (m68k-coff).Looks to me like it really is a 68k assembler. > 2) 'ld --version' It only reports: ld version 2.6 (with BFD 2.6)But when I use 'ld -help' I get: c:/djgpp/bin/ld.exe: supported targets: coff-i386 pe-i386 pei-i386 coff-m68k versados srec symbolsrec tekhex binary c:/djgpp/bin/ld.exe: supported emulations: i386go32 i386coff i386pe m68kcoff So the m68k is mentioned here. But for some reason ld tries to procuce i386 code. I could not figure out if it is possible to force ld to produce m68k code (none of the switches listed upon 'ld -help' to me seemed like it would do the trick) > Yours should say something like m68coff. Either you have the wrong linker > installed or you are using the default djgpp linker script (djgpp.djl). I only have an old djgpp.djl file which belonged to the original DJGPP installation to compile for i386 target (it says 'OUTPUT_FORMAT("coff-go32")' in line 1), but I don't think any of the new executables make use off this file, since after I removed it I got the same error messages. Any ideas? Bart