Re: Compilation with gcc under Solaris 2.5 cont ...

lijowski@cosray2.wustl.edu
13 May 1998 14:47:14 -0000


Fons,

Thank you for your last week response which clarifies the first part
of my message. I already have a set of Makefiles to create each ROOT
shared object library with GNU CC and C++ under Solaris 2.5.

They seem to work, but when I try to compile/link programs in the
root/test directory with GNU CC and C++ and using ROOT shared object
libraries which I generated I get a list of undefined symbols
in libBase.so and libCint.so (see below).
I suspect that there is a library missing from my Makefiles either
in those generating the ROOT shared object libraries or that which
is in root/test and which I modified to use with gcc.

Thank you again.

Regards,

Michal Lijowski

> From Fons.Rademakers@cern.ch Wed May 06 18:06:04 1998
> Delivered-To: lijowski@cosray2.wustl.edu
> Date: Wed, 06 May 1998 20:09:52 +0200
> From: Fons Rademakers <Fons.Rademakers@cern.ch>
> MIME-Version: 1.0
> To: lijowski@cosray2.wustl.edu
> CC: roottalk@hpsalo.cern.ch
> Subject: Re: Compilation with gcc under Solaris 2.5 cont ...
> Content-Transfer-Encoding: 7bit
> X-Status:
>
> Hi Michal,
>
> dlfcn.c is only for IBm AIX, vcstrm.cxx only for MS VC++ Win95/NT, bcstrm.cxx
> only for Borland on NT, and fakestrm.cxx only for machines for which libstrm.cxx
> does not work. So only compile and use CINT_libstrm.cxx on Solaris. Once we
> have the makefiles this will be taken care of.
>
> Cheers, Fons.
>
>
> lijowski@cosray2.wustl.edu wrote:
> >
> > Hello,
> >
> > I still have problems with compilation of some CINT files
> > with GNU C/C++ compiler. Below are the messages which I got.
> >
> > CINT_dlfcn.c:26: sys/ldr.h: No such file or directory
> > CINT_dlfcn.c:27: a.out.h: No such file or directory
> > CINT_dlfcn.c:28: ldfcn.h: No such file or directory
> >
> > CINT_vcstrm.cxx: In function `int G__ifstream_setbuf_5_0(struct G__value *, char *, struct G__param *, int)':
> > CINT_vcstrm.cxx:997: aggregate value used where an integer was expected
> > CINT_vcstrm.cxx: In function `int G__ifstream_fd_8_0(struct G__value *, char *, struct G__param *, int)':
> > CINT_vcstrm.cxx:1013: no member function `ifstream::fd()' defined
> > CINT_vcstrm.cxx: In function `int G__ofstream_setbuf_5_0(struct G__value *, char *, struct G__param *, int)':
> > CINT_vcstrm.cxx:1124: aggregate value used where an integer was expected
> > CINT_vcstrm.cxx: In function `int G__ofstream_fd_8_0(struct G__value *, char *, struct G__param *, int)':
> > CINT_vcstrm.cxx:1140: no member function `ofstream::fd()' defined
> > CINT_vcstrm.cxx: In function `int G__fstream_setbuf_5_0(struct G__value *, char *, struct G__param *, int)':
> > CINT_vcstrm.cxx:1248: aggregate value used where an integer was expected
> > CINT_vcstrm.cxx: In function `int G__fstream_fd_8_0(struct G__value *, char *, struct G__param *, int)':
> > CINT_vcstrm.cxx:1264: no member function `fstream::fd()' defined
> > CINT_vcstrm.cxx: In function `int G__istrstream_str_4_0(struct G__value *, char *, struct G__param *, int)':
> > CINT_vcstrm.cxx:1425: no member function `istrstream::str()' defined
> >
> > When I ifdef out the offending calls in CINT_vcstrm.cxx with
> >
> > #if defined(R__SOLARIS) && defined(R__GNU)
> >
> > and did not compile CINT_dlfcn.c the compilation went through
> > but the linker complained about multiply defined symbols
> > in files CINT_bcstrm.o, CINT_fakestrm.o, CINT_libstrm.o,
> > and CINT_vcstrm.o.
> >
> > I attempted not to include CINT_bcstrm.o, CINT_fakestrm.o, and
> > CINT_vcstrm.o in libCint.so but when I tried to compile/link
> > programs in root/test directory I got messages about undefined
> > symbols. Below is a partial list of those messages.
> >
> > /usr/local/lib/gcc-lib/sparc-sun-solaris2.5/2.7.2.3/cc1plus /var/tmp/cca001bu.ii -quiet -dumpbase MainEvent.cc -O -version -fPIC -o /var/tmp/cca001bu.s
> > GNU C++ version 2.7.2.3 (sparc) compiled by GNU C version 2.7.2.3.
> > /usr/ccs/bin/as -V -Qy -s -K PIC -o MainEvent.o /var/tmp/cca001bu.s
> > /usr/ccs/bin/as: SC4.0 dev 15 Feb 1995
> > Undefined first referenced
> > symbol in file
> > _vt.13strstreambase.3ios /data/cern/root/src/libCint.so
> > cout MainEvent.o
> > _vt.7istream.3ios /data/cern/root/src/libBase.so
> > write__7ostreamPCci /data/cern/root/src/libBase.so
> > init_dynamic__12strstreambufPFUi_PvPFPv_vi /data/cern/root/src/libCint.so
> > get__7istreamPcic /data/cern/root/src/libBase.so
> > __9streambufi /data/cern/root/src/libCint.so
> > __7ostreamiP9streambufP7ostream /data/cern/root/src/libCint.so
> > clog /data/cern/root/src/libCint.so
> > __uflow /data/cern/root/src/libBase.so
> > __13strstreambaseiPcii /data/cern/root/src/libBase.so
> > _vt.8ofstream.3ios /data/cern/root/src/libCint.so
> > __ls__7ostreamP9streambuf /data/cern/root/src/libCint.so
> > pword__3iosi /data/cern/root/src/libCint.so
> > _IO_sgetn /data/cern/root/src/libCint.so
> > __rs__7istreamPc /data/cern/root/src/libCint.so
> > get__7istreamR9streambufc /data/cern/root/src/libCint.so
> > ignore__7istreamii /data/cern/root/src/libCint.so
> > __rs__7istreamRs /data/cern/root/src/libCint.so
> > endl__FR7ostream MainEvent.o
> > _vt.7ostream.3ios /data/cern/root/src/libBase.so
> > __rs__7istreamRc /data/cern/root/src/libCint.so
> > __rs__7istreamRd /data/cern/root/src/libCint.so
> > __rs__7istreamRf /data/cern/root/src/libCint.so
> > __rs__7istreamRi /data/cern/root/src/libCint.so
> > __rs__7istreamRl /data/cern/root/src/libCint.so
> > __rs__7istreamRUi /data/cern/root/src/libCint.so
> > __rs__7istreamRUl /data/cern/root/src/libCint.so
> > open__11fstreambasePCcii /data/cern/root/src/libCint.so
> > __7filebufi /data/cern/root/src/libCint.so
> > _skip_ws__7istream /data/cern/root/src/libCint.so
> > __10istrstreamiPCci /data/cern/root/src/libBase.so
> > cerr /data/cern/root/src/libBase.so
> >
> > Thank you for any help.
> >
> > Regards,
> >
> > Michal Lijowski
> >
> > ----------------------------------------------------------------------------
> >
> > Michal Lijowski Washington University
> > Research Associate St. Louis, MO 63130-4899, USA
> > Department of Physics phone: 314-935-6285
> > Campus Box 1105 email: lijowski@cosray2.wustl.edu
> >
> >
> > ----- End Included Message -----
>
> --
> Org: CERN, European Laboratory for Particle Physics.
> Mail: 1211 Geneve 23, Switzerland Phone: +41 22 7679248
> E-Mail: Fons.Rademakers@cern.ch Fax: +41 22 7677910
>