Date: Tue, 28 Aug 2001 14:05:55 -0700 (PDT) From: Will Robinson To: Subject: Re: linux->dos cross-compiler In-Reply-To: <3B8B7B33.19742.1C1528@localhost> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Reply-To: djgpp AT delorie DOT com Errors-To: nobody AT delorie DOT com X-Mailing-List: djgpp AT delorie DOT com X-Unsubscribes-To: listserv AT delorie DOT com Precedence: bulk > > Now for (hopefully the last) hurdle...linking. I've had to do some (I > > think) odd things to get my code to even come close to linking: > > > > -Explicitly included crt0.o in the list of object files to link. > > -Put -lc -lstdc++ -lgcc at the end of the linker command line. > > > > And I still get errors like these: > > > > /opt/djgpp/i586-pc-msdosdjgpp/lib/libgcc.a(unwind-dw2-fde.o): In function > > `read_encoded_value_with_base': > > unwind-dw2-fde.c:211: multiple definition of `__register_frame_info' > > /opt/djgpp/i586-pc-msdosdjgpp/lib/libc.a(rfinfo.o)(.text+0x0):rfinfo.c: > > first defined here > > > > Last time I built Linux to DJGPP cross-compiler some months ago and saw no similar problems. But it > was after applying some patches (all should be in gcc30s2.zip) Perhaps I'll redo that sometimes with gcc- > 3.0.1, but I cannot say now when. Tried applying all the patches in gcc30s2.zip and redoing everything. All of the patches except for libstdc++-v3/src/Makefile.am.diff applied cleanly (I left Makefile.am as-is). End result was exactly the same (still had to explicitly include crt0.o, libc, libgcc, and libstdc++ when linking, still got multiple definitions of __register_frame_info, still got undefined references to setlocale, toupper, and tolower). :( The ever-hopeful, Will Robinson :)