From: =?iso-8859-1?Q?Dani=EBl=20H=F6rchner?= Newsgroups: comp.os.msdos.djgpp Subject: Re: DJGPP's DXE and Linux ld Date: Fri, 13 Aug 1999 22:54:19 +0200 Organization: MultiAccess Message-ID: <37B485FB.A909B15F@gmx.net> References: <37A9A2C2 DOT CFD4E90D AT gironet DOT nl> NNTP-Posting-Host: samba-eth1.news.big-orange.net Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit X-Trace: rumba.admin.big-orange.net 934577657 29648 172.22.0.83 (13 Aug 1999 20:54:17 GMT) X-Complaints-To: newsmaster AT admin DOT big-orange DOT net NNTP-Posting-Date: 13 Aug 1999 20:54:17 GMT X-Mailer: Mozilla 4.5 [en] (Win98; I) X-Accept-Language: en Cache-Post-Path: samba.news.big-orange.net!unknown AT 231 DOT 130 DOT dialin DOT mxs DOT nl Lines: 44 To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Reply-To: djgpp AT delorie DOT com Hello, I asked this question and these are the things I tried: The first thing I tried was compiling binutils after a "./configure --enable-targets=i386-go32". After that I had an ld which could produce coff-go32 object files needed by dxegen. Then the problem was that ld couldn't convert from the elf object format generated by gcc to the coff-go32 object format. I tried the just compiled objcopy (part of binutils) to convert from elf to coff-go32, but the elf files generated by gcc contain multiple sections and so the produced coff-go32 file contains multiple sections too. However, dxegen can only handle files with one section. One possibility (that I know of) remains, and that one works; building a cross compiler. At www.delorie.com/howto/djgpp/linux-x-djgpp.html DJ Delorie describes how to do that. So, to create a DXE under Linux you call the cross-to-DOS gcc to compile the module. Then dxegen must call the cross-to-DOS ld to do the linking. Many thanks go to Hans-Bernhard Broeker , Charles Sandmann and Eli Zaretskii for their help. My thanks go to DJ Delorie for writing the "Building a Linux-x-djgpp cross compiler" HOWTO. Kind regards, Daniel Horchner Bodo Hörchner wrote: > > Hello, > Is there anybody here who can tell me how to get ld (Linux) to generate > DXE files? It is possible to load and execute them under native Linux, > but I want to be able to generate them under Linux too without the need > for DOS. > If I try to generate a DXE with a Linux version of dxegen I get the > following response of ld: > ld: target coff-go32 not found > This is not a very big surprise because ld says: > ld: supported targets: elf32-i386 a.out-i386-linux srec symbolsrec > tekhex binary ihex trad-core > > Anybody? Many thanks in advance. > > Daniel Horchner