Здесь показаны различия между двумя версиями данной страницы.
Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
howto:root:pandaroot [2015/10/13 15:19] sergey |
howto:root:pandaroot [2020/03/24 16:24] (текущий) ryzhikov [Установка PandaRoot на VirtualBox] |
||
---|---|---|---|
Строка 1: | Строка 1: | ||
- | === Предварительная подготовка === | + | ====== Установка PandaRoot на VBox ====== |
- | Убедиться, что у вас 64-битная машина. | + | |
+ | ===== Предварительная подготовка ===== | ||
+ | Убедиться, что у вас 64-битная машина. | ||
+ | |||
В BIOS включить опции "Intel VT" или "AMD-V". | В BIOS включить опции "Intel VT" или "AMD-V". | ||
+ | |||
+ | ===== Установка ViritualBox ===== | ||
- | |||
- | === Установка ViritualBox === | ||
Скачиваем последнюю версию VirtualBox и VirtualBox Extension Pack с [[https://www.virtualbox.org/wiki/Downloads|сайта]]. | Скачиваем последнюю версию VirtualBox и VirtualBox Extension Pack с [[https://www.virtualbox.org/wiki/Downloads|сайта]]. | ||
Устанавливаем командой: | Устанавливаем командой: | ||
Строка 12: | Строка 14: | ||
# VBoxManage extpack install Oracle_VM_VirtualBox_Extension_Pack-*.vbox-extpack | # VBoxManage extpack install Oracle_VM_VirtualBox_Extension_Pack-*.vbox-extpack | ||
- | В гостевой Ubuntu устанавливаем "Дополнения гостевой ОС" (VirtualBox guest additions). | ||
+ | Создаем (или импортируем) виртуальную машину с Ubuntu. | ||
+ | Если устанавливаем с нуля, то диск лучше делать динамическим и разбить его на два раздела: 16 ГБ под систему и 20 ГБ под home. Раздел подкачки лучше не создавать, а использовать файл подкачки на системном разделе (установить пакет dphys-swapfile). | ||
+ | | ||
+ | В гостевой Ubuntu устанавливаем "Дополнения гостевой ОС" (VirtualBox guest additions). | ||
+ | | ||
Сносим лишние пакеты, устанавливаем нужные: | Сносим лишние пакеты, устанавливаем нужные: | ||
apt-get install aptitude pv vim checkinstall screen openssh-server | apt-get install aptitude pv vim checkinstall screen openssh-server | ||
Строка 22: | Строка 28: | ||
sudo aptitude install etckeeper | sudo aptitude install etckeeper | ||
| | ||
- | ===Установка PandaRoot=== | + | ===== Установка PandaRoot ===== |
[[https://panda-wiki.gsi.de/foswiki/bin/view/Computing/PandaRootInstallGit|Инструкция по установке]] | [[https://panda-wiki.gsi.de/foswiki/bin/view/Computing/PandaRootInstallGit|Инструкция по установке]] | ||
- | + | Если следовать инструкции, получится директория с кашей из софта. Процесс сборки занимает около полутора часов на core i7 с 8ГБ оперативной памяти. | |
- | В результате получится директория с кашей из | + | |
- | + | ||
- | ===Сборка пакета FairSoft и FairRoot, сборка pandaroot === | + | Для компиляции PandaRoot необходимо предварительно утановить FairRoot и FairSoft. |
- | Чтобы установить нормально, и тем более собрать пакеты, нужно немного отклониться от инструкции. | + | Сборка FairSoft, FairRoot из исходных кодов -- очень ресурсоемкий процесс, который к тому же порядка 10ГБ свободного пространства на диске. Поэтому рекомендуем собрать FairSoft и FairRoot на реальном компьютере с той же версией операционной системы, а затем перенести их на виртуальную машину. |
- | + | ||
- | ==== 0. Предварительные требования ==== | + | ==== Сборка пакета FairSoft и FairRoot ==== |
+ | |||
+ | Чтобы установить собрать пакеты, которые легко будет перенести на виртуальную машину, нужно немного отклониться от инструкции. | ||
+ | |||
+ | === 0. Предварительные требования === | ||
+ | |||
<code> | <code> | ||
- | apt-get install cmake cmake-data g++ gcc gfortran \ | + | sudo apt-get install cmake cmake-data \ |
- | build-essential make patch sed libx11-dev libxft-dev \ | + | g++ gcc gfortran build-essential make patch sed libx11-dev \ |
- | libxext-dev libxpm-dev libxmu-dev libglu1-mesa-dev \ | + | libxft-dev libxext-dev libxpm-dev libxmu-dev libglu1-mesa-dev \ |
libgl1-mesa-dev ncurses-dev curl bzip2 gzip unzip tar \ | libgl1-mesa-dev ncurses-dev curl bzip2 gzip unzip tar \ | ||
subversion git xutils-dev flex bison lsb-release \ | subversion git xutils-dev flex bison lsb-release \ | ||
- | python-dev libc6-dev-i386 libxml2-dev wget libssl-dev | + | python-dev libc6-dev-i386 libxml2-dev wget libssl-dev \ |
+ | libboost-dev checkinstall | ||
</code> | </code> | ||
Дополнительно нужно установить libcurl-dev (в Убунту -- libcurl4-gnutls-dev) | Дополнительно нужно установить libcurl-dev (в Убунту -- libcurl4-gnutls-dev) | ||
- | ==== 1. Установка FairSoft ==== | + | === 1. Установка FairSoft === |
- | :TODO | + | |
+ | FairSoft -- это готовый скрипт, устанавливающий набор необходимых программ: ROOT5/6, Geant4, Pythia8 и т.п. | ||
- | ==== 2. Установка FairRoot ==== | + | Клонируем только файлы неободимого релиза (тега -- в терминологии git) в директорию fairsoft_mar15p2. |
- | :TODO | + | <code> |
- | ==== 3. Сборка пакета FairRoot ==== | + | export TAG=mar15p2 |
- | Удаляем директорию. | + | git clone --branch $TAG --depth 1 https://github.com/FairRootGroup/FairSoft fairsoft_$TAG |
- | Запускаем sudo checkinstall | + | cd fairsoft_$TAG |
- | :TODO | + | sudo mkdir -p /opt/fair/fairsoft.$TAG |
+ | sudo chgrp -R users /opt/fair/fairsoft.$TAG | ||
+ | chmod g+ws /opt/fair/fairsoft.$TAG | ||
+ | time ./configure.sh | ||
+ | << Отвечаем цифрами, а когда спросят path:, указываем /opt/fair/fairsoft.mar15p2 >> | ||
+ | </code> | ||
+ | === 2. Установка FairRoot и сборка пакета === | ||
+ | Собираем мартовскую версию FairRoot: | ||
+ | <code> | ||
+ | export SIMPATH=/opt/fair/fairsoft.mar15p2/ | ||
+ | ls $SIMPATH | ||
+ | export FRTAG=15.03a | ||
+ | git clone --branch v-$FRTAG --depth 1 https://github.com/FairRootGroup/FairRoot fairroot_$FRTAG | ||
+ | cd fairroot_${FRTAG}/ | ||
+ | mkdir build | ||
+ | cd build | ||
+ | cmake -DCMAKE_INSTALL_PREFIX=/opt/fair/fairroot${FRTAG} ../ | ||
+ | make -j 8 #число процессоров в системе | ||
+ | << При сборке следим, чтобы системная память не переполнялась. Если система "ушла в swap", останавливаем make нажатием Ctrl-C и перезапускаем с меньшим числом процессов. >> | ||
+ | rm -r /opt/fair/fairroot${FRTAG} | ||
+ | sudo checkinstall | ||
+ | </code> | ||
- | ==== 3. сборка pandaroot ==== | + | <code> |
- | :TODO | + | Отвечаем на вопросы checkinstall: |
+ | |||
+ | 0 - Maintainer: [ ] | ||
+ | 1 - Summary: [ Fairroot custom built. ] | ||
+ | 2 - Name: [ fairroot-15.03a ] | ||
+ | 3 - Version: [ 0 ] | ||
+ | 4 - Release: [ 1 ] | ||
+ | 5 - License: [ GPL ] | ||
+ | 6 - Group: [ checkinstall ] | ||
+ | 7 - Architecture: [ amd64 ] | ||
+ | 8 - Source location: [ https://github.com/FairRootGroup/FairRoot ] | ||
+ | 9 - Alternate source location: [ ] | ||
+ | 10 - Requires: [ ] | ||
+ | 11 - Provides: [ fairroot15 ] | ||
+ | 12 - Conflicts: [ ] | ||
+ | 13 - Replaces: [ ] | ||
+ | . >> | ||
+ | </code> | ||
+ | ==== Cборка pandaroot ==== | ||
+ | Переносим fairsoft.tar.gz и fairroot...deb на виртуальную машину. | ||
+ | Распаковываем fairsoft: | ||
+ | sudo tar -xfzf fairsoft.tar.gz -C / | ||
+ | |||
+ | Устанавливаем fairroot: | ||
+ | sudo dpkg -i fairroot*.deb | ||
+ | |||
+ | Скачиваем и собираем pandaroot: | ||
+ | <code> | ||
+ | export FAIRROOTPATH=/opt/fair/fairroot-15.03a/ | ||
+ | export SIMPATH=/opt/fair/fairsoft.mar15p2/ | ||
+ | svn co https://subversion.gsi.de/fairroot/pandaroot/release/mar15 pandaroot_mar15 | ||
+ | cd pandaroot_mar15 | ||
+ | mkdir build | ||
+ | cd build | ||
+ | cmake ../ | ||
+ | make -j 8 # число процессоров виртуальной машины | ||
+ | </code> | ||
+ | << если для сборки не хватает оперативной памяти (машина "уходит в swap"), останавливаем make и запускаем с меньшим числом процессов. >> | ||
+ | | ||
+ | |||
+ | ==== Установка rootpy ==== | ||
+ | Устанавливаем зависимости | ||
+ | sudo aptitude install python-pip python-setuptools python-numpy python-matplotlib python-termcolor | ||
+ | | ||
+ | Устанавливаем в домашнюю директорию: | ||
+ | <code> | ||
+ | . thisroot.sh | ||
+ | pip install --user rootpy | ||
+ | </code> |