Re: problems with drawtool
Brought to you by:
johnston
From: Scott J. <sc...@ac...> - 2002-01-23 22:20:17
|
> I was using c++ to build the exec(--> gnu ld). It changed it to use > solaris ld, and it dies.... > > /usr/ccs/bin/ld -o a.out *.o > -L/scratch/weberr/ivtools-1.0/src/OverlayUnidraw/SUN4 -lOverlayUnidraw > -L/scratch/weberr/ivtools-1.0/src/ComGlyph/SUN4 -lComGlyph > -L/scratch/weberr/ivtools-1.0/src/ComTerp/SUN4 -lComTerp > -L/scratch/weberr/ivtools-1.0/src/AttrGlyph/SUN4 -lAttrGlyph > -L/scratch/weberr/ivtools-1.0/src/Attribute/SUN4 -lAttribute > -L/scratch/weberr/ivtools-1.0/src/ComUtil/SUN4 -lComUtil > -L/scratch/weberr/ivtools-1.0/src/UniIdraw/SUN4 -lUniIdraw > -L/scratch/weberr/ivtools-1.0/src/IVGlyph/SUN4 -lIVGlyph > -L/scratch/weberr/ivtools-1.0/src/TopoFace/SUN4 -lTopoFace > -L/scratch/weberr/ivtools-1.0/src/Unidraw/SUN4 -lUnidraw > -L/scratch/weberr/ivtools-1.0/src/IV/SUN4 -lIV -L/usr/local/X11/lib -lXext > -lX11 -lSM -lICE -L/usr/local/X11/lib -lstdc++ -lsocket -lnsl -lSM -lICE > -lm > Undefined first referenced > symbol in file > _Q_dtoq /usr/lib/libstdc++.a(iostream.o) > (symbol belongs to implicit dependency /usr/lib/libc.so.1) > read /usr/lib/libstdc++.a(fileops.o) > (symbol belongs to implicit dependency /usr/lib/libc.so.1) > strtoul /usr/lib/libstdc++.a(iovfscanf.o) > (symbol belongs to implicit dependency /usr/lib/libc.so.1) > ....(more lines) > So now your static linking of libstdc++ is confused by symbols that may or may not be missing from the dynamic version of libc. It thinks a symbol like "read" is in libc, but it is still Undefined. Hmmm... Aren't there Solaris ld options for being explicit about static linking (-Bstatic and -Bdynamic?) . Perhaps you could force both libstdc++ and libc to be static, by surrounding them with these, i.e.: ... -Bstatic -lstdc++ -Bdynamic ... -Bstatic -lc -Bdynamic Good luck. Scott Johnston |