Hello Ákos,
Ákos Balázs wrote:
> On 5/15/08, Carsten Neumann <[EMAIL PROTECTED]> wrote:
>> Ákos Balázs wrote:
>> > `.gnu.linkonce.t._ZN3osg6SFieldINS_6Color3IfEELi0EE14pushValueByStrEPKc'
>> > referenced in section `.rodata' of obj-opt/OSGPhongMaterialBase.o:
>> > defined in discarded section
>> > `.gnu.linkonce.t._ZN3osg6SFieldINS_6Color3IfEELi0EE14pushValueByStrEPKc'
>> > of obj-opt/OSGPhongMaterialBase.o
>> > `.gnu.linkonce.t._ZN3osg6SFieldINS_6Color3IfEELi0EE14pushValueByStrEPKc'
>> > referenced in section `.rodata' of obj-opt/OSGSimpleMaterialBase.o:
>> > defined in discarded section
>> > `.gnu.linkonce.t._ZN3osg6SFieldINS_6Color3IfEELi0EE14pushValueByStrEPKc'
>> > of obj-opt/OSGSimpleMaterialBase.o
>> >
>> `.gnu.linkonce.t._ZN3osg6SFieldINS_15VectorInterfaceIfNS_11VecStorage3IfEEEELi0EE14pushValueByStrEPKc'
>> > referenced in section `.rodata' of
>> > obj-opt/OSGComponentTransformBase.o: defined in discarded section
>> >
>> `.gnu.linkonce.t._ZN3osg6SFieldINS_15VectorInterfaceIfNS_11VecStorage3IfEEEELi0EE14pushValueByStrEPKc'
>> > of obj-opt/OSGComponentTransformBase.o
>> > [...]
>> >
>> > ...and about 200 more of these (I can supply a full log if it helps,
>> > but it's really just more of the same). G++ version:
>> >
>> > [EMAIL PROTECTED]:~$ g++ -v
>> > Reading specs from /usr/lib/gcc-lib/i486-linux-gnu/3.3.6/specs
>> > Configured with: ../src/configure -v
>> > --enable-languages=c,c++,java,f77,pascal,objc,ada,treelang
>> > --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info
>> > --with-gxx-include-dir=/usr/include/c++/3.3 --enable-shared
>> > --enable-__cxa_atexit --with-system-zlib --enable-nls
>> > --without-included-gettext --enable-clocale=gnu --enable-debug
>> > --enable-java-gc=boehm --enable-java-awt=xlib --enable-objc-gc
>> > i486-linux-gnu
>> > Thread model: posix
>> > gcc version 3.3.6 (Debian 1:3.3.6-7)
>> >
>> > Unfortunately I don't have the configure line I used anymore, but it
>> > was nothing out of the ordinary.
>> if you used the make/configure build you can see the configure line near
>> the top of config.status
>
> That's handy to know. :-) In this case:
>
> ./configure --prefix=/usr/local --with-glut --enable-png
> --enable-jpg --enable-gif --enable-mng --enable-tif
> --with-qt=/usr/share/qt3 --enable-opt_drawtree
hm, indeed nothing out of the ordinary...
>> > I'm building without the experimental
>> > GV stuff, I tried a build with the gv-beta flag enabled but that gave
>> > me similar errors so I thought maybe that's at fault, but building
>> > without the gv-beta flag seems to give the same results.
>> >
>> > Does anyone have any ideas?
>> is there any chance of compiler mixup, i.e. is the compiler used to
>> build OpenSG the one you've shown the specs for ?
>> AFAIK C++ standard compliance/support improved drastically with the gcc
>> 3.4.x release series, so this might be a problem with the fairly old
>> compiler.
>
> I'm fairly sure I have only this c++ compiler installed. I also have
> gcc-2.95 for kernel stuff, but I don't think it matters. Maybe it's
> the old compiler, but I'd prefer not having to install a newer one if
> possible...
ok, it was just a thought.
>> Have there been any warning when compiling
>> Source/Base/Field/OSGTypeInst.cpp or any other files that use
>> SField<Color3f> or SField<Vec3f> etc. ?
>
> Nope, OSGBaseLib compiles and builds just fine. No warnings.
>
>> Can you try using objdump and grep to see if the symbols are present in
>> any of the .o files ?
>
> Do you mean like this:
>
> $ objdump -x BaseLib/lib-opt/libOSGBase.so |grep
> _ZN3osg6SFieldINS_6Color3IfEELi0EE14pushValueByStrEPKc
> 00164ba0 w F .text 00000191
> _ZN3osg6SFieldINS_6Color3IfEELi0EE14pushValueByStrEPKc
>
> so it seems to be in the BaseLib.
hm, ok. Having reread the error message a couple of times now, I think
this is related to how the linker handles templates. If a template is
instantiated in multiple translation units with the same template
arguments and these are later linked together the linker basically has
to discard all but one of the identical instantiations.
The message seems to suggest that it does not get this quite right, but
other than looking through the compiler/linker options for a knob that
can influence this I don't really know what to do now.
Has anybody else encountered something similar and remembers how to
overcome this ?
Thanks,
Carsten
-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Opensg-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/opensg-users