Skip to content
This repository has been archived by the owner on Apr 26, 2023. It is now read-only.

Generating Binaries

Laura edited this page Dec 21, 2017 · 39 revisions
Scipion Logo

For a new Scipion release we generate a "binary" version (a Scipion installation that can be moved as a whole and work in basically any machine without recompiling). The main difference is the --binary flag when installing from a fresh download, that will later change the RPATH of the binaries.

In order to get the maximum libc compatibility, it is recommended to generate the binary package in a computer running an old Linux. One option is a Centos-6.5 virtual machine (see below for details).

The following steps summarize how to generate the binaries in a Centos_64 virtual machine.

Download Scipion from GitHub

git clone --depth 1 https://github.com/I2PC/scipion.git

For generating the binaries we do not need the whole repository history (option --depth 1).

Generate the Source zipped tar

python scipion/scripts/tar.py source

This script will create the zipped tar file skipping temporary files and build artifacts. The script should print the tar command used:

 tar czf scipion_devel__source.tgz \
--exclude=.git --exclude='*.o' --exclude='*.os' --exclude='*pyc' \
--exclude='*.mrc' --exclude='*.stk' --exclude='*.gz'  \
--exclude='software/tmp/*' --exclude='*.scons*' --exclude='config/*.conf' scipion

Create a Basic Installation

cd scipion
./scipion config
./scipion install --binary -j 5
cd ..
python scipion/scripts/tar.py linux64

In this CentOS machine the ./scipion config should complain about the MPI variables. You will need to correct with mpi directories. For example:

MPI_BINDIR = /usr/lib64/openmpi/bin
MPI_LIBDIR = /usr/lib64/openmpi/lib
MPI_INCLUDE = /usr/include/openmpi-x86_64

Install other EM packages (not for normal bundles)

cd scipion
./scipion install --no-xmipp --binary -j 5 relion-1.4
./scipion install --no-xmipp bsoft-1.9.0 chimera ctffind ctffind4 dogpicker eman2.11 frealign motioncorr resmap spider summovie unblur
cd ..
python scipion/scripts/tar.py linux64-em-packages

We have set up a Centos 6.5 virtual machine to generate the Scipion bundles. This VM is on heisenberg (user scipion) and the following commands are useful to manage it: * List existing VMs VBoxManage list vms (machine is called "CentOS_64") * List running vms VBoxManage list runningvms * Start the VM VBoxHeadless -startvm "CentOS_64" & * Access the VM from heisenberg (wait a bit till it starts) ssh -p 2222 [email protected] (pass: 'V1rtu4l.') * Stop VM VBoxManage controlvm CentOS_64 poweroff

It is recommended to stop the VM once bundles are done and copied out of the machine.

Clone this wiki locally