Re: [ROOT] Root and cygnus ?

From: Christian Holm Christensen (cholm@hehi03.nbi.dk)
Date: Wed May 03 2000 - 22:53:32 MEST


Hi Radovan, Sylvain, and others, 

On Wed, 03 May 2000 19:54:08 +0200 Radovan Chytracek <Radovan.Chytracek@cern.ch> wrote:
> Sylvain HEILLIETTE wrote:
> > 
> >         Hello,
> > 
> > I'm tryng to use the ROOT libraries on a Windows 95 system.
> > My goal is to compile a data analysis software which was developped
> > under linux using Root libraries.
> > 
> > My question is :
> > 
> > How is it possible to compile such a program with gcc under the
> > cygnus UNIX emulation for Windows (cygwin b20) ?
> > 
> > Is  it more simple to use the Visual C++ compiler ?
> 
> I think that problem sits in the fact that ROOT relies on shared libraries.
> Using MSVC++ on Windows platforms is possible to build these without
> problems.
> The same is for Linux or other U**x operating systems using GNU C++ or their
> native compilers.
> Problem of Cygwin on Windows is that to build the shared libraries on this
> platform using GNU C++ is not that easy. AFAIK this process is pretty
> complicated.

Though it's not as easy as on a Linux/Unix box, it's not that
hard. Cygnus ships CygWin with the application "dlltool" (or is it
"dllwrap"?) that simplifies things alot. 

It's been a while since I last did anything similar on a Windoze
machine, but I do remember that you have to recompile ROOT to get
optimum performance. What is espcially important, is the export
libraries for ROOT.  

To recompile ROOT using CygWin, start by modifing a Linux Makefile so
that it matches you're system. Then you can add an entry to
ROOTSYS/src/Make-Lib (or whatever it's called) to make the DLL's,
using "dlltool" (or "dllwrap"). And finally you need to link the
executables, which is straight forward GNU-like. However, you should
realize, that Windoze needs the ROOT shared libraries (the .dll files)
somewhere in it's PATH, since it doesn't have a any concept of
LD_LIBRARY_PATH. 

As far as I remember, "dlltool" works like "g++ -shared -Wl,-soname,",
but you better check the documentation. 

> That's probably the main reason why ROOT is not built on Windows in the
> environment of Cygwin32.

Go back on roottalk, and see what Valeri Fine has to say about that:
  
  http://root.cern.ch/root/roottalk/roottalk00/1250.html

Hope that was of some help, 

Christian  -----------------------------------------------------------
Holm Christensen                             Phone:  (+45) 35 35 96 91 
  Sankt Hansgade 23, 1. th.                  Office: (+45) 353  25 305 
  DK-2200 Copenhagen N                       Web:    www.nbi.dk/~cholm    
  Denmark                                    Email:       cholm@nbi.dk



This archive was generated by hypermail 2b29 : Tue Jan 02 2001 - 11:50:24 MET