Last active
October 13, 2021 17:58
-
-
Save ZhijieWang/48e0da5722b2009b25b9b0a296efb67c to your computer and use it in GitHub Desktop.
GEANT4-build
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
CMAKE_VERSION=3.21 | |
CMAKE_BUILD=3 | |
GEANT4_VERSION_TAG=v10.7.2 | |
MAX_NUM_G4_THREADS=18 | |
G4_DATASETS=('G4EMLOW.7.7.tar.gz' 'G4ENSDFSTATE.2.2.tar.gz') | |
G4ENSDFSTATEDATA=/usr/local/geant4-data/G4ENSDFSTATE2.2 | |
G4LEDATA=/usr/local/geant4-data/G4EMLOW7.7 | |
PATH=$PATH:/usr/local/geant4/bin:/opt/cmake/cmake-3.21.3-linux-x86_64/bin/ | |
sudo apt-get install make libexpat1 libexpat1-dev | |
echo "Installing CMake..." | |
sudo apt purge --auto-remove cmake # uninstall default CMake version included by Ubuntu's package manager | |
mkdir ~/temp | |
cd ~/temp | |
wget https://cmake.org/files/v$CMAKE_VERSION/cmake-$CMAKE_VERSION.$CMAKE_BUILD-linux-x86_64.sh | |
sudo mkdir /opt/cmake | |
sudo bash cmake-$CMAKE_VERSION.$CMAKE_BUILD-linux-x86_64.sh --prefix=/opt/cmake --skip-license | |
sudo ln -s /opt/cmake/bin/cmake /usr/local/bin/cmake | |
echo "Downloading Geant4..." | |
cd ~/temp | |
git clone --depth 1 --branch $GEANT4_VERSION_TAG https://github.com/Geant4/geant4.git geant4 | |
echo "Downloading Geant4 data..." | |
mkdir -p ~/temp/local/geant4-data | |
cd ~/temp/local/geant4-data | |
for DATASET in "${G4_DATASETS[@]}" | |
do | |
echo "Downloading $DATASET..." | |
wget http://geant4.cern.ch/support/source/$DATASET | |
tar -xvzf $DATASET | |
rm -rf $DATASET | |
done | |
echo "Building Geant4..." | |
mkdir -p ~/temp/geant4-build | |
cd ~/temp/geant4-build | |
cmake -DCMAKE_BUILD_TYPE=Release -DGEANT4_BUILD_MULTITHREADED=ON -DGEANT4_INSTALL_DATADIR=$GEANT4_DATA_DIR/geant4_data -DGEANT4_BUILD_STORE_TRAJECTORY=OFF -DGEANT4_BUILD_VERBOSE_CODE=OFF -DCMAKE_INSTALL_PREFIX=~/temp/geant4-install ~/temp/geant4 | |
make -j$MAX_NUM_G4_THREADS | |
sudo make install | |
cp -a ~/temp/geant4-install/. /usr/local/geant4 | |
echo "Cleaning up..." | |
sudo rm -rf ~/temp |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment