Рассмотрим процесс установки GEANT4.
- Скачиваем архив отсюда download page.
Создаем директорию GEANT4 в своем домашнем каталоге.
- Распаковываем в неё скачанный архив.
- В директории GEANT4 создаем папки build и install. В папке build мы будем собирать GEANT4, а в папку install устанавливать.
- Опционально: можно скачать data-файлы, и разместить их в директории data, что бы затем использовать их при установке. Это совершенно необязательно, так как GEANT4 может скачать их сам при сборке.
Установка на Ubuntu
Сборка без дополнительных опций
Устанавливаем необходимые утилиты для сборки: компилятор С++, cmake и консольный конфигуратор ccmake, а ткаже необходимые библиотеки:
apt-get install g++ cmake cmake-curses-gui apt-get install libexpat1 libexpat1-dev
Переходим в директорию build:
cd ~/GEANT4/build
Открываем ccmake:
ccmake ../geant4.10.03
Здесь в качетсве аргумента команды ccmake используется путь до диретории распакованной из скаченного нами архива с GEANT4. ccmake читает расположенной в этой директории файл CMakeLIsts.txt, для того чтобы настроить параметры сборки.
- После того как ccmake открылся, жмем клавишу c, если все нормально, то ccmake выдаст предупреждение об отсутствии data-файлов, которое можно смело проигнорировать. Так же может выдать ошибку если в системе не установлена какая-либо библиотека, тогда её надо доустановить.
- Если ccmake успешно сконфигурировался, отредактируем следующие параметры:
CMAKE_INSTALL_PREFIX - по умолчанию он пытается установить GEANT4 в системную директорию, однако я предлагаю прописать здесь путь до папки install.
GEANT4_INSTALL_DATA - установим значение ON, для того чтобы GEANT4 сам скачал data-файлы. Если у вас уже есть эти файлы, укажаите к ним путь в параметре GEANT4_INSTALL_DATADIR. Жмем клавишу c , до тех пор пока не появиться опция нажать клавишу g. Жмем g. ccmake создаст makefile и закроется.
Собираем GEANT4:
make -jN #где N количество ядер которое вы хотите задействовать, посмотреть количество ядер можно в htop (apt-get install htop)
Устанавливаем GEANT4:
make install #если вы не изменяли параметр CMAKE_INSTALL_PREFIX, то используйте sudo make install, еще лучше воспользуетесь checkinstall
Устанавливаем переменные окружения:
source /path/to/install/bin/geant4.sh #Для автоматического установление переменных среды, данную команду нужно прописать в .bashrc (только для консольных приложений) или в .xsessionrc (и для графических тоже).
Проверяем работоспособность на примерах:
cd ~ mkdir temp cd temp mkdir build cd build cmake ../../GEANT4/install/share/Geant4-10.3.0/examples/basic/B1/ #путь до примера make ./exampleB1
- PROFIT
- Папку build мы не удалаем, так как она пригодится нам когда мы захотим пересобрать GEANT4 с другими опциями. Это позовлит нам в дальнейшем пересобирать только те файлы которые будут изменены.
Anaconda
Иногда при сборке cmake пытается использовать не системные библиотеки, а бибилиотеки anaconda. Это решается удаление пути к anaconda из переменной PATH. Или смотрим раздел Установка с помощью conda.
Сборка дополнительных опций
Подключение GDML
Для загрузки геометрии из внешних gdml-файлов, на потребуется подключить GDML.
Устанавливаем необходимые библиотеки:
apt-get install libxerces-c3.1 libxerces-c-dev
- Запускаем ccmake в папке build.
- Установим значение ON для параметра GEANT4_USE_GDML.
- Конфигурируем, генерируем, собираем и устанавливаем.
Подключение GUI
Для GUI будем использовать qt - установим значение параметра GEANT4_USE_QT равным ON. Если хотим использовать qt4, то установите значение параметра GEANT4_FORCE_QT4 равным ON.
apt-get install qt5-default #или apt-get install qt4-default libqt4-opengl-dev
Установка с помощью conda (cross-linux)
Если вы не имеет прав суперпользователя, или системные репозитории безнадежно устарели, или вы просто не хотите с ними связываться, то можно использовать пакетный менеджер conda для установки дополнительных библиотек.
- Устанавливаем Anaconda или Miniconda c официального сайта.
Устанавливаем необходимые пакеты:
conda install -c anaconda gcc conda install libgcc conda install -c anaconda xerces-c conda install -c anaconda cmake conda install -c anaconda qt # если ставили miniconda
- Конфигурируем, генерируем, собираем и устанавливаем.
3 Comments
Alexander Nozik
Mihail Zelenyy
Считается что он лучше. Вроде даже в Debiane используется как дефолтный.
Alexander Nozik
Тогда надо все ей ставить. Вообще разницы почти нет.