User Tools

Site Tools


hpc:lcgcmake

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Last revision Both sides next revision
hpc:lcgcmake [2015/08/21 19:31]
jchilders [Setup]
hpc:lcgcmake [2015/08/24 19:25]
jchilders [Setup]
Line 16: Line 16:
     * ''soft add +cmake''     * ''soft add +cmake''
     * ''soft add +gcc-4.8.1''     * ''soft add +gcc-4.8.1''
-=== Install Dependencies ===+==== Install Dependencies ====
   * ''mkdir dependencies''   * ''mkdir dependencies''
   * ''cd dependencies''   * ''cd dependencies''
Line 81: Line 81:
         endif()         endif()
       endif()</code>       endif()</code>
-  * Edit ''lcgcmake/projects/CMakeLists.txt'' line 296 from <code cmake> SVN_REPOSITORY=http://svn.cern.ch/guest/lcgcoral/coral/tags/${CORAL_native_version} --quiet </code> to <code cmake> SVN_REPOSITORY=http://svn.cern.ch/guest/lcgcoral/coral/tags/CORAL_${CORAL_native_version} --quiet </code>+  * Edit ''lcgcmake/projects/CMakeLists.txt'' line 244 in CORAL package from <code cmake> SVN_REPOSITORY=http://svn.cern.ch/guest/lcgcoral/coral/tags/${CORAL_native_version} --quiet </code> to <code cmake> SVN_REPOSITORY=http://svn.cern.ch/guest/lcgcoral/coral/tags/CORAL_${CORAL_native_version} --quiet </code>
   * Edit ''lcgcmake/externals/CMakeLists.txt'' lines 297 - 302 (or so) from <code cmake>    * Edit ''lcgcmake/externals/CMakeLists.txt'' lines 297 - 302 (or so) from <code cmake> 
 #---Davix-------------------------------------------------------------------------------------------- #---Davix--------------------------------------------------------------------------------------------
Line 119: Line 119:
 -DCMAKE_C_COMPILER=${CMAKE_C_COMPILER} -DCMAKE_C_COMPILER=${CMAKE_C_COMPILER}
 -DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER}</code> -DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER}</code>
 +  * Edit ''lcgcmake/externals/CMakeLists.txt'' around line ? in the hepmc3 package and add the lines <code cmake>-DCMAKE_C_COMPILER=${CMAKE_C_COMPILER}
 +-DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER}</code>.
   * Edit ''lcgcmake/externals/CMakeLists.txt'' around line 842 in the igprof package and comment out the ''-Wno-error=unused-result''.   * Edit ''lcgcmake/externals/CMakeLists.txt'' around line 842 in the igprof package and comment out the ''-Wno-error=unused-result''.
 +  * Edit ''lcgcmake/externals/CMakeLists.txt'' line 339 in the hepmc3 package from <code cmake> 
 +set(hepmc3_source_command GIT_REPOSITORY http://git.cern.ch/cernpub/hepmc3) </code> to <code cmake>
 +set(hepmc3_source_command GIT_REPOSITORY http://git.cern.ch/pub/hepmc3) </code>
  
 === Building LCG === === Building LCG ===
Line 128: Line 133:
 When a build fails, look at this list for fixes, fix, then continue with ''make -j 10''. When a build fails, look at this list for fixes, fix, then continue with ''make -j 10''.
   * After the ''pythia8'' packages download and fail to build, the Makefile's must be edited, the files ''lcgcmake-build/generators/pythia8-201/src/pythia8/201/Makefile'' have ''$(CXX_SONAME),$(notdir $@)'' which must be changed to ''-shared''.   * After the ''pythia8'' packages download and fail to build, the Makefile's must be edited, the files ''lcgcmake-build/generators/pythia8-201/src/pythia8/201/Makefile'' have ''$(CXX_SONAME),$(notdir $@)'' which must be changed to ''-shared''.
-  * After ''evtgen'' package downloads and fails to build, the Makefile must be edited, the file ''lcgcmake-build/generators/evtgen-1.2.0/src/evtgen/1.2.0/Makefile'' have ''$(shell find ... )'' commands inside, Add ''-not -path '*/\.*''' to the end of these finds. This is to exclude the many stupid hidden files ''._<fildname>'' that someone must have commit to the repo from their MAC.+    * ''%%sed 's/$(CXX_SONAME),$(notdir\ $@)/-shared/g' generators/pythia8-201/src/pythia8/201/Makefile > generators/pythia8-201/src/pythia8/201/Makefile.tmp%%'' 
 +  * After ''evtgen'' package downloads and fails to build, the Makefile must be edited, the file ''lcgcmake-build/generators/evtgen-1.2.0/src/evtgen/1.2.0/src/Makefile'' have ''$(shell find ... )'' commands inside, Add ''-not -path '*/\.*''' to the end of these finds. This is to exclude the many stupid hidden files ''._<fildname>'' that someone must have commit to the repo from their MAC.
   * After ROOT 6 downloads and fails the build, you can make the following edits to fix the ODBC files. Add to the files ''lcgcmake-build/projects/ROOT-6.02.12/src/ROOT/6.02.12/sql/odbc/inc/TODBC*.h'' a ''#include<sqlcli.h>'' just under the ''#include<sql.h>'' at the top of the file. Add to the files ''lcgcmake-build/projects/ROOT-6.02.12/src/ROOT/6.02.12/sql/odbc/src/TODBCServer.cxx'' and ''lcgcmake-build/projects/ROOT-6.02.12/src/ROOT/6.02.12/sql/odbc/src/TODBCStatement.cxx'' a ''#include<sqlcli1.h>'' at the top of the files.   * After ROOT 6 downloads and fails the build, you can make the following edits to fix the ODBC files. Add to the files ''lcgcmake-build/projects/ROOT-6.02.12/src/ROOT/6.02.12/sql/odbc/inc/TODBC*.h'' a ''#include<sqlcli.h>'' just under the ''#include<sql.h>'' at the top of the file. Add to the files ''lcgcmake-build/projects/ROOT-6.02.12/src/ROOT/6.02.12/sql/odbc/src/TODBCServer.cxx'' and ''lcgcmake-build/projects/ROOT-6.02.12/src/ROOT/6.02.12/sql/odbc/src/TODBCStatement.cxx'' a ''#include<sqlcli1.h>'' at the top of the files.
  
hpc/lcgcmake.txt · Last modified: 2015/08/24 19:29 by jchilders