From: "Xenos" Newsgroups: comp.os.msdos.djgpp References: <1tB89.78529$vg DOT 16362032 AT twister DOT nyroc DOT rr DOT com> Subject: Re: link problem Lines: 135 X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 5.50.4807.1700 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4807.1700 Message-ID: Date: Thu, 22 Aug 2002 00:43:14 GMT NNTP-Posting-Host: 24.169.43.193 X-Complaints-To: abuse AT rr DOT com X-Trace: twister.nyroc.rr.com 1029976994 24.169.43.193 (Wed, 21 Aug 2002 20:43:14 EDT) NNTP-Posting-Date: Wed, 21 Aug 2002 20:43:14 EDT Organization: Road Runner To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Reply-To: djgpp AT delorie DOT com Ok, I was wrong. That wasn't the solution. Anyone know why this happens? "Xenos" wrote in message news:1tB89.78529$vg DOT 16362032 AT twister DOT nyroc DOT rr DOT com... > Found the problem. Djgpp can't seem to handle a static variable defined in > a member function of a template class with a *large* number of template > parameters. > > > "Xenos" wrote in message > news:btA89.78492$vg DOT 16279537 AT twister DOT nyroc DOT rr DOT com... > > Anyone know why I would get this when I link with DJGPP (gcc 3.1, ld > 2.11.2 > > or 2.13). I don't get it with Linux using the same level of gcc. And I > > don't define any symbol called "_a". > > > > > set_test.o(.gnu.linkonce.r._ZZN6IArrayILi33EjLj3ELj0ELj0ELj0ELj0ELj0ELj0ELj0 > > ELj0ELj0ELj0ELj0ELj0ELj0ELj > > > 0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj > > 0ELj0ELj0ELj0ELj0ELj0ELj0EL > > > j0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0EL > > j0ELj0ELj0ELj0ELj0EE5valueE > > vE1a+0x0):set_test.cpp: multiple definition of `_a' > > > set_test.o(.gnu.linkonce.r._ZZN6IArrayILi33EjLj3ELj1ELj0ELj0ELj0ELj0ELj0ELj0 > > ELj0ELj0ELj0ELj0ELj0ELj0ELj > > > 0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj > > 0ELj0ELj0ELj0ELj0ELj0ELj0EL > > > j0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0EL > > j0ELj0ELj0ELj0ELj0EE5valueE > > vE1a+0x0):set_test.cpp: first defined here > > > set_test.o(.gnu.linkonce.r._ZZN6IArrayILi33EjLj3ELj1ELj0ELj0ELj0ELj0ELj0ELj0 > > ELj0ELj0ELj0ELj0ELj0ELj0ELj > > > 0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj1ELj > > 0ELj0ELj0ELj0ELj0ELj0ELj0EL > > > j0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0EL > > j0ELj0ELj0ELj0ELj0EE5valueE > > vE1a+0x0):set_test.cpp: multiple definition of `_a' > > > set_test.o(.gnu.linkonce.r._ZZN6IArrayILi33EjLj3ELj1ELj0ELj0ELj0ELj0ELj0ELj0 > > ELj0ELj0ELj0ELj0ELj0ELj0ELj > > > 0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj > > 0ELj0ELj0ELj0ELj0ELj0ELj0EL > > > j0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0EL > > j0ELj0ELj0ELj0ELj0EE5valueE > > vE1a+0x0):set_test.cpp: first defined here > > > set_test.o(.gnu.linkonce.r._ZZN6IArrayILi33EjLj2ELj1ELj0ELj0ELj0ELj0ELj0ELj0 > > ELj0ELj0ELj0ELj0ELj0ELj0ELj > > > 0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj1ELj > > 0ELj0ELj0ELj0ELj0ELj0ELj0EL > > > j0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0EL > > j0ELj0ELj0ELj0ELj0EE5valueE > > vE1a+0x0):set_test.cpp: multiple definition of `_a' > > > set_test.o(.gnu.linkonce.r._ZZN6IArrayILi33EjLj3ELj1ELj0ELj0ELj0ELj0ELj0ELj0 > > ELj0ELj0ELj0ELj0ELj0ELj0ELj > > > 0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj > > 0ELj0ELj0ELj0ELj0ELj0ELj0EL > > > j0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0EL > > j0ELj0ELj0ELj0ELj0EE5valueE > > vE1a+0x0):set_test.cpp: first defined here > > > set_test.o(.gnu.linkonce.r._ZZN6IArrayILi33EjLj2147549207ELj1ELj1ELj0ELj1ELj > > 0ELj0ELj0ELj1ELj0ELj0ELj0EL > > > j0ELj0ELj0ELj0ELj1ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0EL > > j0ELj1ELj0ELj0ELj0ELj0ELj0E > > > Lj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0E > > Lj0ELj0ELj0ELj0ELj0ELj0ELj0 > > EE5valueEvE1a+0x0):set_test.cpp: multiple definition of `_a' > > > set_test.o(.gnu.linkonce.r._ZZN6IArrayILi33EjLj3ELj1ELj0ELj0ELj0ELj0ELj0ELj0 > > ELj0ELj0ELj0ELj0ELj0ELj0ELj > > > 0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj > > 0ELj0ELj0ELj0ELj0ELj0ELj0EL > > > j0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0ELj0EL > > j0ELj0ELj0ELj0ELj0EE5valueE > > vE1a+0x0):set_test.cpp: first defined here > > collect2: ld returned 1 exit status > > make.exe: *** [test.exe] Error 1 > > > > > > > > Thanks! > > Rich > > > > > >