Where's the CMakeList file?

hello,

just downloaded the new root version for ubuntu 16.04 and ran the INSTALL procedure
with simple

“cmake …/root” from the builddir folder, but then I get

" The source directory “/home/damir/root” does not appear to contain CMakeLists.txt"

where’s the cmake file?, or is there a zwischenzug,

thanks, Damir

2 Likes

The CMakeLists.txt file is at the top directory of the ROOT git repository. If you don’t have that file, then there is a problem with your git checkout. Please make sure that the path you provide to CMake is the path to the top directory of the repository, and that the file is there. You may not have the build files if you downloaded the binary package, which seems to be the case. To clone the git repository, do git clone https://github.com/root-project/root then git checkout v6-10-00-patches to get the latest release branch.

ok; maybe just a heads up for other users; The reason why I don’t have CMakeFile is that I downloaded directly the binary tar file from root site (not the GIT pull)

https://root.cern.ch/content/release-61002

1 Like

just a follow up; The installation went ok with the git pull package;
The issue now is that the pyroot package doesn’t contain the file “No module named libPyROOT”;"
"Pyroot "does exist in root/bindings…

Why would this happen in a standard installation procedure (happened also when using the binary package); Would appreciate help on this, thanks;

Have you run source $ROOTSYS/bin/thisroot.sh before trying to load the python modules? You may have to do that and/or set PYTHONPATH to the place where ROOT’s python modules are installed (e.g. $ROOTSYS/lib).

yes I set the paths in my bashrc

export ROOTSYS=/opt/builddir
export PATH=$PATH:$ROOTSYS/bin
export PYTHONPATH=$PYTHONPATH:/opt/root/bindings/pyroot

Also, don’t really understand why there was a need to make an additional builddir folder for “make”…; Anyway in pyroot there is not libPyROOT file at all :frowning:

thisroot.sh does more than what you seem to have in your bashrc (for example it also sets LD_LIBRARY_PATH and others). Why don’t you simply source thisroot.sh from your bashrc instead of manually setting only select env variables?

As for the additional build directory: search the internet for “out-of-source build”, it is a very useful technique to separate source and (possibly multiple) builds.

the .sh file is in “/opt/builddir/bin” so I would need to source this always directly or with some alias before running root. But my problem is with libPyROOT file which basically doesn’t exist; locate libPyROOT is empty; I think this is an ongoing issue with the ubuntu system (happened also with the binary file installation last year); Any ideas on where I can pull this file and place it?

Ok; just to be clear; sourcing the .sh, getting the same missing file when running pyroot script

Locate is not a reliable source (its database is not updated immediately). Use find instead.
The file should be in root-build-dir/lib/libPyROOT.so, so probably in your /opt/builddir/lib.

Standard questions: all prerequisites installed? See https://root.cern.ch/build-prerequisites#ubuntu
How did you move root to to /opt/builddir (which cmake parameters did you use)? Did you build ROOT as super user? Why is it in opt? I’d build ROOT as user and check if it works before moving it to /opt)

Also: in the very beginning of this thread you said you had downloaded the binary distribution. I just did that as well, and sure enough, it contains libPyROOT.so in its root/lib directory. Maybe you should just try the binary distribution?

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.