You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
65 lines
2.6 KiB
Modula-2
65 lines
2.6 KiB
Modula-2
Bootstrap: docker
|
|
From: ubuntu:18.04
|
|
|
|
%help
|
|
El script de bashrc de foam-extend no puede integrarse al contenedor.
|
|
Ejecutar como:
|
|
apptainer exec foamextend-4.0_openmpi-3.1.6.sif bash -c "source /opt/foam/foam-extend-4.0/etc/bashrc ; comando"
|
|
|
|
%environment
|
|
export OMPI_DIR=/opt/ompi
|
|
export PATH="$OMPI_DIR/bin:$PATH"
|
|
export LD_LIBRARY_PATH="$OMPI_DIR/lib:$LD_LIBRARY_PATH"
|
|
export MANPATH="$OMPI_DIR/share/man:$MANPATH"
|
|
export WM_PROJECT_DIR=/opt/foam/foam-extend-4.0
|
|
# . /opt/foam/foam-extend-4.0/etc/bashrc
|
|
|
|
%post -c /bin/bash
|
|
export OMPI_VERSION=3.1.6
|
|
export WM_NCOMPPROCS=32
|
|
|
|
echo America/Buenos_Aires > /etc/localtime
|
|
echo "Installing required packages..."
|
|
apt-get update
|
|
apt-get install -y
|
|
apt-get install -y git-core build-essential binutils-dev cmake flex zlib1g-dev qt4-dev-tools libqt4-dev libncurses5-dev libxt-dev rpm mercurial graphviz python python-dev gcc-5 g++-5 wget
|
|
apt-get clean
|
|
rm -rf /var/lib/apt/lists/*
|
|
|
|
export OMPI_DIR=/opt/ompi
|
|
export OMPI_URL="https://download.open-mpi.org/release/open-mpi/v${OMPI_VERSION:0:-2}/openmpi-$OMPI_VERSION.tar.bz2"
|
|
mkdir -p /tmp/ompi
|
|
mkdir -p /opt
|
|
# Download
|
|
cd /tmp/ompi && wget -O openmpi-$OMPI_VERSION.tar.bz2 $OMPI_URL && tar -xjf openmpi-$OMPI_VERSION.tar.bz2
|
|
# Compile and install
|
|
cd /tmp/ompi/openmpi-$OMPI_VERSION && ./configure --prefix=$OMPI_DIR && make -j$WM_NCOMPPROCS install
|
|
|
|
# Set env variables so we can compile our application
|
|
export PATH=$OMPI_DIR/bin:$PATH
|
|
export LD_LIBRARY_PATH=$OMPI_DIR/lib:$LD_LIBRARY_PATH
|
|
|
|
mkdir /opt/foam
|
|
cd /opt/foam
|
|
git clone git://git.code.sf.net/p/foam-extend/foam-extend-4.0 ./foam-extend-4.0
|
|
|
|
cd foam-extend-4.0
|
|
echo export WM_THIRD_PARTY_USE_BISON_27=1 >> etc/prefs.sh
|
|
echo export QT_SELECT=qt4 >> etc/prefs.sh
|
|
echo "export WM_CC='gcc-5'" >> etc/prefs.sh
|
|
echo "export WM_CXX='g++-5'" >> etc/prefs.sh
|
|
echo "export QT_BIN_DIR=/usr/bin/" >> etc/prefs.sh
|
|
echo "export WM_MPLIB=SYSTEMOPENMPI" >> etc/prefs.sh
|
|
echo "export OPENMPI_DIR=/opt/ompi/" >> etc/prefs.sh
|
|
echo "export OPENMPI_BIN_DIR=\$OPENMPI_DIR/bin" >> etc/prefs.sh
|
|
|
|
sed -i -e 's/foamInstall=$HOME\/$WM_PROJECT/#/' ./etc/bashrc
|
|
sed -i -e 's/# foamInstall=\/opt/foamInstall=\/opt/' ./etc/bashrc
|
|
|
|
source ./etc/bashrc
|
|
sed -i -e 's=rpmbuild --define=rpmbuild --define "_build_id_links none" --define=' ThirdParty/tools/makeThirdPartyFunctionsForRPM
|
|
sed -i -e 's/gcc/\$(WM_CC)/' wmake/rules/linux64Gcc/c
|
|
sed -i -e 's/g++/\$(WM_CXX)/' wmake/rules/linux64Gcc/c++
|
|
|
|
./Allwmake.firstInstall
|