Dear rooters,
I compiled root_v5.24.00 with gcc version 4.4.0-4 (Red Hat 20090506) on Fedora 11, kernel 2.6.29.5-191.fc11.i686.PAE #1 SMP.
It seems to compile fine ---- no errors! But when I start root I get errors:
rootx xpm error: XpmOpenFailed
Error: cannot open file ïostream" (tmpfile):2;
Error: cannot open file ¨_string¨ (tmpfile):2;
Error: cannot open file ¨RtypesCint.h¨ (tmpfile):2;
Error: cannot open file ¨Dillmport.h¨ (tmpfile):2;
ROOT cannot find the files in the root/icons and root/include directories. These directories must be next to the root/bin directory. Did you move the bin directory or delete these other directories?
I did not move any directories at all!
I did:
[root] export ROOTSYS=/home/blah/blah/root
[root] ./configure linux --prefix=/home/blah/blah/root
… a lot of output which ended with a message
Now you can
make
make install
So I did
[root] make -j2
… lots of stuff … no errors
[root] make install
… everything already installed
[root]source bin/thisroot.sh
[root] root
No root graphic/picture
but the output errors in my previous post
I examined the file thisroot.sh and found that it refers to the bin and lib directories as
/home/blah/blah/root/bin/root/bin
/home/blah/blah/root/lib/root/lib
When I went into the root directory I found them at /home/blah/blah/root/bin and /home/blah/blah/root/lib
Changing thisroot.sh to refer to these did not remove the errors.
I have compiled several times already, each time using a fresh source of untared and unzipped sources and doing
export LD_LIBRARY_PATH=$ROOTSYS/lib:$LD_LIBRARY_PATH
manually instead of [$root]source thisroot.sh. Still, same errors.
the --prefix option is only needed when you plan to make a system wide installation in something like /usr/local. And there is also no need on Linux to set ROOTSYS anymore. The only thing you need is to make sure that /home/blah/blah/root/bin in in your PATH. This can be simply achieved with:
. /home/blah/blah/root/bin/thisroot.sh
So try building ROOT like:
cd root
./configure
make
. bin/thisroot.sh
cd tutorials
root
.x benchmarks.C
.q
Hi Fons,
Thanks again!
I did as you suggested and everything works fine now except for a complaint on launching root, ¨Couldn´t find font "-adobe-helvita-medium -r---10-----*-iso8859-1¨,
trying ¨fixed¨. Please fix your system so helvetica can be found, this font typically is in the rpm XFree86-[75,100]dpi-fonts or fonts-xorg-[75,100]dpi
I keep several working installations of ROOT installed in /usr/local so that I can switch easily between them to maintain legacy codes. I realize that the variable ROOTSYS is no longer required by root itself but I still set it so that the rest of my environment (PATH, DYLD_LIBRARY_PATH etc.) is set for the desired version. For 5.24.00 I have configured with
./configure --prefix=$ROOTSYS
where ROOTSYS=/usr/local/root/v5.24.00
My shell (.tcsh) startup scripts take care of the following:
I get the same errors at startup that were listed in the initial post. The “missing” include files and libraries are right where I think they should be ($ROOTSYS/lib and $ROOTSYS/include) This has worked in the past without any additional effort for versions up to 5.22.00. I am using Mac OS 10.5.7. What is the difference for 5.24.00? How else can root be told where to find things? Thanks.
Where you build it and nothing else is needed if you set ROOTSYS to point to this install directory. You can always move it around and change ROOTSYS. The --prefix install is only for system wide installs (see remarks on install from source page).
ROOT 5.27/07 (trunk@35856, Oct 03 2010, 08:29:00 on linux)
CINT/ROOT C/C++ Interpreter version 5.18.00, July 2, 2010
Type ? for help. Commands must be C++ statements.
Enclose multiple statements between { }.
Error: cannot open file “iostream” (tmpfile):2:
*** Interpreter error recovered ***
Error: cannot open file “DllImport.h” (tmpfile):2:
*** Interpreter error recovered ***
root [0]
Where are the three errors coming from…?? Seems root is looking somewhere else or ??
Yes it does:
$ ls $ROOTSYS
bin config.log etc gui io main montecarlo REAMEmine~ tmmp
bindings config.status fonts hist lib Makefile net roofit tmva
build configure geom html LICENSE man proof rootx tree
cint core graf2d icons math README sql tutorials
config doc graf3d include macros misc REAMEmine test usr
*** represents deleted things in /home/***/root; may be better written as /home/blah/blah/root.