O objetivo desta página é ensinar como se faz o setup básico de um área de desenvolvimento CMSSW no Sprace. Para os efeitos desta página, assume-se o uso da shell bash.
PREREQUISITO: conta na máquina access.sprace.org.br
.
A framework de software do CMS - CMSSW - fica localizada em diretórios centrais no cluster. Para ter acesso a essa framework, você deve primeiro localizar esses diretórios através de variáveis de ambiente. Tendo feito isso, o próximo passo é fazer o setup de uma área de desenvolvimento CMSSW (CMSSW developer area) em um diretório no qual você tenha acesso de escrita (normalmente em um subdiretório do seu $HOME
), através do uso do comando scramv1
. Para criar uma CMSSW developer area da versão x_y_z do CMSSW, utiliza-se o comando scramv1 project CMSSW CMSSW_x_y_z
.
Estes comandos indicam onde estão as releases do CMSSW, e permitem o uso do comando scramv1
.
export OSG_APP=/OSG_app/app source $OSG_APP/cmssoft/cms/cmsset_default.shEste conjunto de dois comandos deve ser utilizado sempre que você planejar utilizar o comando
scramv1
. Como isso é bastante comum, (por exemplo, sempre que se compila código pra utilizar com a CMSSW), é interessante colocar esses comandos em um script de inicialização como o .bashrc
. Para fazer isso:
echo export OSG_APP=/OSG_app/app >> ~/.bashrc echo source $OSG_APP/cmssoft/cms/cmsset_default.sh >> ~/.bashrc
scramv1 list | grep CMSSW cmsrel CMSSW_x_y_z
x_y_z
é a versão do CMSSW que você quer instalar.
cd CMSSW_x_y_z/src cmsenv
Com a área de trabalho preparada dessa maneira, você já pode seguir as instruções do CMSSW Workbook: https://twiki.cern.ch/twiki/bin/view/CMS/WorkBook
Existe um modo de trabalhar com o software do CMS que é mais "leve", no sentido de que você pode trabalhar com os arquivos de dados do CMS (EDM files) de dentro do próprio ROOT. Esse é o chamado FWLite. Se você quiser fazer isso, você vai precisar preparar o ROOT antes. Para isso, crie um arquivo chamado $HOME/rootlogon.C
, com o seguinte conteúdo:
{ gSystem->Load("libFWCoreFWLite.so"); AutoLibraryLoader::enable(); }
e um outro chamado $HOME/.rootrc
, com no mínimo o seguinte conteúdo:
# Tell ROOT where to find rootlogon.C: Rint.Logon: $(HOME)/rootlogon.C
-- ThiagoTomei - 03 Dec 2008
antalya escort bursa escort eskisehir escort istanbul escort izmir escort