X11 Error ROOT latest version and Cygwin

Hi all,
I finally decided to build ROOT on my local computer usong Cygwin latest version with gcc 3.3

I used the isntallation guide from
which is recommended by root.cern.ch

Then I used the .bashrc and .bash_profile given on root.cern.ch

compilation did indeed work without problems (i guess), but when I attempt to run root from cygwin I get the following error from startx console

(coloc-rotiti) [37] root
Error in TUnixSystem::DynamicPathName: GX11[.so | .sl | .dl | .a | .dll] does
not exist in .:i:\root/lib

  •                                     *
  •    W E L C O M E  to  R O O T       *
  •                                     *
  • Version 4.01/05 27 November 2004 *
  •                                     *
  • You are welcome to visit our Web site *
  •      [root.cern.ch](http://root.cern.ch)            *
  •                                     *

Compiled for win32gcc with thread support.

CINT/ROOT C/C++ Interpreter version 5.15.156, Oct 20 2004
Type ? for help. Commands must be C++ statements.
Enclose multiple statements between { }.
Error in TUnixSystem::DynamicPathName: Minuit[.so | .sl | .dl | .a | .dll] doe
s not exist in .:i:\root/lib
Error in TUnixSystem::DynamicPathName: Postscript[.so | .sl | .dl | .a | .dll]
does not exist in .:i:\root/lib
Error in TUnixSystem::DynamicPathName: Html[.so | .sl | .dl | .a | .dll] does
not exist in .:i:\root/lib
root [0]

Did anyone had the same problem ??

I did the installation and compilation using the sources

I guess my .bashrc is well configured :If I type
echo $ROOTSYS I get the good directory (ROOT installation dir)

I hope I gave all the informations needed
Thanks for any help

Could you check that the libraries have been correctly built?
What is the output of
ls -l $ROOTSYS/lib
ls -l $ROOTSYS/bin


Heres is the outpout needed
looks like everything is okay

thanks for your attention
temp.txt (10.9 KB)

Hi Vincent,
my guess: you have $ROOTSYS in windows format (i:\root), not unix (/cygdrive/i/root) - you need the latter.

Sorry, i think my root.sh is Okay :

export ROOTSYS=/cygdrive/i/root
export PATH=$ROOTSYS/bin:$PATH

Hi Vincent,
can you send the output of “echo $ROOTSYS; echo $PATH; echo $LD_LIBRARY_PATH”, please?

echo $ROOTSYS gives me
i:\root (??!!)

echo $LD_LIBRARY_PATH gives nothing

echo $PATH gives
/i/root/bin:/home/Rotiti/bin:/usr/local/bin:/usr/local/bin/X11:/opt/bin:/bin:/usr/bin:/usr/bin/X11:/usr/ucb:/usr/X11R6/bin:/sbin:/usr/sbin:./bin:.::/c/WINNT/system32:/c/WINNT:/c/Program Files/Microsoft Visual Studio/Common/Tools/WinNT:/c/Program Files/Microsoft Visual Studio/Common/MSDev98/Bin:/c/Program Files/Microsoft Visual Studio/Common/Tools:/c/Program Files/Microsoft Visual Studio/VC98/bin:/c/Program Files/DevStudio/DF/bin:/c/Program Files/DevStudio/SharedIDE/bin

looks like my $ROOTSYS is wrong but I don’t know how to fix this…

:-] As I said… Make sure you run “. root.sh” if you run it by hand, or that it gets parsed properly when you log on if it’s in /etc/profile.d/. Check that your ~/.profile contains the line “. /etc/profile”.

Can’t figure how to do this :

I have no .profile file in any directory :
My Cygwin is installed on i:\Cygwin_UNIX
there is no .profile file in
i:\Cygwin_UNIX or in i:\Cygwin_UNIX/etc/profile.d or i:\Cygwin_UNIX/home/ or in any other directory

Do I have to create one ?
What to write in ?

Thanks a lot for your help

Your root.sh has to be executed somehow. All the commands from here on are meant to be run from within the cygwin bash, not the windows command line interface. You can run root.sh by hand, each time you log on to a new cygwin bash: “. root.sh” [], and then start root. Or you can put it in /etc/profile.d/ (“mv root.sh /etc/profile.d/”), where it gets executed automatically whenever you start a new cygwin bash. For the profile.d mechanism to work, /etc/profile has to be called from within ~/.profile; “echo ‘. /etc/profile’ >> ~/.profile” [] will take care of that.

[*]: note the space between the dot and the file name!

Where is this .profile located ? (what does ~means ?)

Bi the way I tried to load the root.sh file by hand, it worked well, but then if I type root I have the ROOT logo, tneh a segmentation violation !!!

Looks like I’m not close to usie ROOT at home…


It’s in “~/”. “~” means home, i.e. /home/vincent or whatever your user ID is. This is unix. You can just execute the commands as I wrote them in my last post.

I need more info to be able to reproduce this. It’s very strange as you compiled root yourself, and didn’t see a segment violation when you used it with the wrong $ROOTSYS. Can you post everything you see, starting at where you call root?

Judging on your knowledge of the “unix side of the world”, you might be better off using the main windows distribution, i.e. win32gdk (also known as win32). You’ll need MS Visual C++ for that, though. Up to you!