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

From: Fons Rademakers (Fons.Rademakers@cern.ch)
Date: Wed May 06 1998 - 20:09:52 MEST


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



This archive was generated by hypermail 2b29 : Tue Jan 04 2000 - 00:34:32 MET