Please provide the following information:
ROOT Version (e.g. 6.10/08): 6.10.08
Platform, compiler (e.g. CentOS 7.3, gcc6.2): CentOS 7.2, gcc5.2
I am attempting to build a (slightly) customized version of ROOT (with PYTHIA6 enabled) on Jefferson Lab’s batch farm, and I am having significant difficulty with the CMake build system due to the fact that when certain external libraries can’t be located in standard locations on the system by CMake, the “builtin” option for those libraries is automatically switched on, and the build is configured to automatically download (insecurely) certain external libraries from the web, which is not possible in my context due to JLab’s network security.
For example, during the build process, I get error messages like:
"CMake Error at TBB-stamp/TBB-download-RelWithDebInfo.cmake:16 (message):
Command failed: 1
‘/u/apps/cmake/cmake-3.5.1/bin/cmake’ ‘-Dmake=’ ‘-Dconfig=’ ‘-P’ ‘/home/puckett/ROOT_PYTHIA/build/TBB-prefix/src/TBB-stamp/TBB-download-RelWithDebInfo-impl.cmake’
See also
/home/puckett/ROOT_PYTHIA/build/TBB-prefix/src/TBB-stamp/TBB-download-*.log
gmake[2]: *** [TBB-prefix/src/TBB-stamp/TBB-download] Error 1
gmake[1]: *** [CMakeFiles/TBB.dir/all] Error 2"
And in the TBB-download-err.log file, I find a standard message about being unable to connect to the server:
"CMake Error at TBB-stamp/download-TBB.cmake:21 (message):
error: downloading
‘http://lcgpackages.web.cern.ch/lcgpackages/tarFiles/sources/tbb2017_U5.tar.gz’
failed
status_code: 7
status_string: "Couldn't connect to server"
log: Trying 188.184.67.233...
connect to 188.184.67.233 port 80 failed: Connection timed out
Failed to connect to lcgpackages.web.cern.ch port 80: Connection timed out
Closing connection 0
CMake Error at TBB-stamp/TBB-download-RelWithDebInfo-impl.cmake:9 (message):
Command failed (1):
‘/u/apps/cmake/cmake-3.5.1/bin/cmake’ ‘-P’ '/home/puckett/ROOT_PYTHIA/build/TBB-prefix/src/TBB-stamp/download-TBB.cmake".
So in the end what I’m trying to figure out, is which external libraries are truly required for a working ROOT build, and which are optional, and also, is there an easy way to disable all external libraries that require insecure downloads from the web? Note that I did a secure SSH clone of the git repository to obtain the source distribution, and this worked fine.
It would seem to me that for ROOT building to work “out of the box”, it should not require ANY external libraries to be insecurely downloaded as part of the build process. Moreover, it seems disingenuous to call these libraries “built-in”. In newer ROOT versions, it seems there are several external libraries that CMake will configure for automatic downloading
How would you recommend that I proceed?
Thanks in advance,
Andrew