====== Установка PandaRoot на VBox ======
===== Предварительная подготовка =====
Убедиться, что у вас 64-битная машина.
В BIOS включить опции "Intel VT" или "AMD-V".
===== Установка ViritualBox =====
Скачиваем последнюю версию VirtualBox и VirtualBox Extension Pack с [[https://www.virtualbox.org/wiki/Downloads|сайта]].
Устанавливаем командой:
# dpkg -i virtualbox-5.0_*_amd64.deb
# VBoxManage extpack install Oracle_VM_VirtualBox_Extension_Pack-*.vbox-extpack
Создаем (или импортируем) виртуальную машину с Ubuntu.
Если устанавливаем с нуля, то диск лучше делать динамическим и разбить его на два раздела: 16 ГБ под систему и 20 ГБ под home. Раздел подкачки лучше не создавать, а использовать файл подкачки на системном разделе (установить пакет dphys-swapfile).
В гостевой Ubuntu устанавливаем "Дополнения гостевой ОС" (VirtualBox guest additions).
Сносим лишние пакеты, устанавливаем нужные:
apt-get install aptitude pv vim checkinstall screen openssh-server
sudo apt-get remove --purge evince thunderbird empathy gwibber gnome-games-data aisleriot indicator-messages software-center
sudo aptitude install gnome-session-fallback
sudo aptitude install etckeeper
===== Установка PandaRoot =====
[[https://panda-wiki.gsi.de/foswiki/bin/view/Computing/PandaRootInstallGit|Инструкция по установке]]
Если следовать инструкции, получится директория с кашей из софта. Процесс сборки занимает около полутора часов на core i7 с 8ГБ оперативной памяти.
Для компиляции PandaRoot необходимо предварительно утановить FairRoot и FairSoft.
Сборка FairSoft, FairRoot из исходных кодов -- очень ресурсоемкий процесс, который к тому же порядка 10ГБ свободного пространства на диске. Поэтому рекомендуем собрать FairSoft и FairRoot на реальном компьютере с той же версией операционной системы, а затем перенести их на виртуальную машину.
==== Сборка пакета FairSoft и FairRoot ====
Чтобы установить собрать пакеты, которые легко будет перенести на виртуальную машину, нужно немного отклониться от инструкции.
=== 0. Предварительные требования ===
sudo apt-get install cmake cmake-data \
g++ gcc gfortran build-essential make patch sed libx11-dev \
libxft-dev libxext-dev libxpm-dev libxmu-dev libglu1-mesa-dev \
libgl1-mesa-dev ncurses-dev curl bzip2 gzip unzip tar \
subversion git xutils-dev flex bison lsb-release \
python-dev libc6-dev-i386 libxml2-dev wget libssl-dev \
libboost-dev checkinstall
Дополнительно нужно установить libcurl-dev (в Убунту -- libcurl4-gnutls-dev)
=== 1. Установка FairSoft ===
FairSoft -- это готовый скрипт, устанавливающий набор необходимых программ: ROOT5/6, Geant4, Pythia8 и т.п.
Клонируем только файлы неободимого релиза (тега -- в терминологии git) в директорию fairsoft_mar15p2.
export TAG=mar15p2
git clone --branch $TAG --depth 1 https://github.com/FairRootGroup/FairSoft fairsoft_$TAG
cd fairsoft_$TAG
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 >>
=== 2. Установка FairRoot и сборка пакета ===
Собираем мартовскую версию FairRoot:
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
Отвечаем на вопросы 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: [ ]
. >>
==== Cборка pandaroot ====
Переносим fairsoft.tar.gz и fairroot...deb на виртуальную машину.
Распаковываем fairsoft:
sudo tar -xfzf fairsoft.tar.gz -C /
Устанавливаем fairroot:
sudo dpkg -i fairroot*.deb
Скачиваем и собираем pandaroot:
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 # число процессоров виртуальной машины
<< если для сборки не хватает оперативной памяти (машина "уходит в swap"), останавливаем make и запускаем с меньшим числом процессов. >>
==== Установка rootpy ====
Устанавливаем зависимости
sudo aptitude install python-pip python-setuptools python-numpy python-matplotlib python-termcolor
Устанавливаем в домашнюю директорию:
. thisroot.sh
pip install --user rootpy