From: pavenis AT lanet DOT lv Message-ID: To: Eli Zaretskii , djgpp-workers AT delorie DOT com Date: Tue, 4 Jan 2000 19:00:05 +0200 MIME-Version: 1.0 Content-type: text/plain; charset=US-ASCII Content-transfer-encoding: 7BIT Subject: Re: problem using "templates" References: In-reply-to: X-mailer: Pegasus Mail for Win32 (v3.12b) Reply-To: djgpp-workers AT delorie DOT com On 4 Jan 00, at 11:04, Eli Zaretskii wrote: > > On Mon, 3 Jan 2000, Jason Green wrote: > > > D:\>gpp -Wall test.cpp -o test > > d:/djgpp/tmp\ccuAyWLk.o(.text+0xb):test.cpp: undefined reference to > > `foo::bar' > > collect2: ld returned 1 exit status > > > > I just can't see how this program can compile with g++ on one platform > > but not under DJGPP using the same gcc version. > > I think Andris just explained this: G++ is configured differently for > these two platforms (probably because of the different binary file > format used by each platform). That's why -frepo makes the difference, > AFAIK. > > > And I don't see how the C++ libraries could be involved? > > I thought about the header files, which are part of the library, and > have executable code in them. > It is possible to build gcc with support of weak symbols which will fix problems with static members in template classes (see message from Mark Elbrecht from 23 March 1999 in djgpp-workers). Main problem: one will have to use development snapshots of binutils ( binutils 2.8.1 and 2.9.1 doesn't support weak symbols for DJGPP) If there would be easy way how to enable/disable it from specs it perhaps would be acceptable. Andris