Skip to content

Instantly share code, notes, and snippets.

@berceanu
Created May 5, 2022 08:03
Show Gist options
  • Save berceanu/059b391c4762141877c06eff0dcc48a1 to your computer and use it in GitHub Desktop.
Save berceanu/059b391c4762141877c06eff0dcc48a1 to your computer and use it in GitHub Desktop.
Install instructions for Smilei using the spack package manager.
 . spack/share/spack/setup-env.sh
spack install openmpi@4.1.3 %gcc@9.4.0
spack load openmpi@4.1.3

spack install hdf5@1.12.2 %gcc@9.4.0 +cxx +fortran ^openmpi
spack load hdf5@1.12.2 

spack install ffmpeg@4.4.1 %gcc@9.4.0

spack install py-h5py@3.6.0 %gcc@9.4.0 +mpi ^openmpi

spack install py-sphinx py-numpy py-matplotlib py-pint py-ipython %gcc@9.4.0
spack load python@3.9.12
spack load openmpi@4.1.3
spack load hdf5@1.12.2
spack load /nfkwb6w
export HDF5_ROOT_DIR=$(spack location -i /nfkwb6w7zfiph2xwtdek3thsxuljilho)
export SMILEICXX=/home/johndoe/spack/opt/spack/linux-ubuntu20.04-icelake/gcc-9.4.0/openmpi-4.1.3-uv7zugcavhzcg65tb7liyfq4xsjjupho/bin/mpicxx
export PYTHONEXE=/home/johndoe/spack/opt/spack/linux-ubuntu20.04-icelake/gcc-9.4.0/python-3.9.12-u6gyvcymxwzo473x74kompq34gtenrwk/bin/python
@berceanu
Copy link
Author

berceanu commented May 5, 2022

output of make env after loading dependencies via spack:

VERSION : 4.7-5-gd021d9e08-master
SMILEICXX : /home/johndoe/spack/opt/spack/linux-ubuntu20.04-icelake/gcc-9.4.0/openmpi-4.1.3-uv7zugcavhzcg65tb7liyfq4xsjjupho/bin/mpicxx
OPENMP_FLAG : -fopenmp -D_OMP
HDF5_ROOT_DIR : /home/johndoe/spack/opt/spack/linux-ubuntu20.04-icelake/gcc-9.4.0/hdf5-1.12.2-nfkwb6w7zfiph2xwtdek3thsxuljilho
FFTW3_LIB_DIR :
SITEDIR : /home/johndoe/.local/lib/python3.9/site-packages
PYTHONEXE : /home/johndoe/spack/opt/spack/linux-ubuntu20.04-icelake/gcc-9.4.0/python-3.9.12-u6gyvcymxwzo473x74kompq34gtenrwk/bin/python
PY_CXXFLAGS : -I/home/johndoe/spack/opt/spack/linux-ubuntu20.04-icelake/gcc-9.4.0/python-3.9.12-u6gyvcymxwzo473x74kompq34gtenrwk/include/python3.9 -I/home/johndoe/spack/opt/spack/linux-ubuntu20.04-icelake/gcc-9.4.0/python-3.9.12-u6gyvcymxwzo473x74kompq34gtenrwk/include/python3.9
PY_LDFLAGS : -lpython3.9 -lcrypt -lintl -lpthread -ldl -lutil -lm -lm -Xlinker -export-dynamic
CXXFLAGS : -Wno-reorder -D__VERSION="4.7-5-gd021d9e08-master" -D_VECTO -std=c++11 -Wall -I/home/johndoe/spack/opt/spack/linux-ubuntu20.04-icelake/gcc-9.4.0/hdf5-1.12.2-nfkwb6w7zfiph2xwtdek3thsxuljilho/include -Isrc -Isrc/Radiation -Isrc/MovWindow -Isrc/Tools -Isrc/Python -Isrc/Diagnostic -Isrc/Checkpoint -Isrc/Species -Isrc/ParticleInjector -Isrc/ParticleBC -Isrc/Profiles -Isrc/picsar_interface -Isrc/Field -Isrc/ElectroMagnBC -Isrc/Patch -Isrc/ElectroMagnSolver -Isrc/DomainDecomposition -Isrc/Projector -Isrc/Params -Isrc/Interpolator -Isrc/Ionization -Isrc/SmileiMPI -Isrc/Collisions -Isrc/ElectroMagn -Isrc/Particles -Isrc/Merging -Isrc/Pusher -Isrc/MultiphotonBreitWheeler -Ibuild/src/Python -I/home/johndoe/spack/opt/spack/linux-ubuntu20.04-icelake/gcc-9.4.0/python-3.9.12-u6gyvcymxwzo473x74kompq34gtenrwk/include/python3.9 -I/home/johndoe/spack/opt/spack/linux-ubuntu20.04-icelake/gcc-9.4.0/python-3.9.12-u6gyvcymxwzo473x74kompq34gtenrwk/include/python3.9 -O3 -g -fopenmp -D_OMP
LDFLAGS : -L/home/johndoe/spack/opt/spack/linux-ubuntu20.04-icelake/gcc-9.4.0/hdf5-1.12.2-nfkwb6w7zfiph2xwtdek3thsxuljilho/lib -lhdf5 -lpython3.9 -lcrypt -lintl -lpthread -ldl -lutil -lm -lm -Xlinker -export-dynamic -lm -fopenmp -D_OMP

@berceanu
Copy link
Author

berceanu commented May 5, 2022

output of make env without spack:

make: python: Command not found
make: python: Command not found
make: python: Command not found
VERSION :
SMILEICXX : mpicxx
OPENMP_FLAG : -fopenmp -D_OMP
HDF5_ROOT_DIR :
FFTW3_LIB_DIR :
make: python: Command not found
SITEDIR :
PYTHONEXE : python
PY_CXXFLAGS :
PY_LDFLAGS :
CXXFLAGS : -Wno-reorder -D__VERSION="" -D_VECTO -std=c++11 -Wall -Isrc -Isrc/Radiation -Isrc/MovWindow -Isrc/Tools -Isrc/Python -Isrc/Diagnostic -Isrc/Checkpoint -Isrc/Species -Isrc/ParticleInjector -Isrc/ParticleBC -Isrc/Profiles -Isrc/picsar_interface -Isrc/Field -Isrc/ElectroMagnBC -Isrc/Patch -Isrc/ElectroMagnSolver -Isrc/DomainDecomposition -Isrc/Projector -Isrc/Params -Isrc/Interpolator -Isrc/Ionization -Isrc/SmileiMPI -Isrc/Collisions -Isrc/ElectroMagn -Isrc/Particles -Isrc/Merging -Isrc/Pusher -Isrc/MultiphotonBreitWheeler -Ibuild/src/Python -O3 -g -fopenmp -D_OMP
LDFLAGS : -lhdf5 -lm -fopenmp -D_OMP

@berceanu
Copy link
Author

berceanu commented May 5, 2022

locate libpython3.9:

/home/johndoe/spack/opt/spack/linux-ubuntu20.04-icelake/gcc-9.4.0/python-3.9.12-u6gyvcymxwzo473x74kompq34gtenrwk/lib/libpython3.9.so
/home/johndoe/spack/opt/spack/linux-ubuntu20.04-icelake/gcc-9.4.0/python-3.9.12-u6gyvcymxwzo473x74kompq34gtenrwk/lib/libpython3.9.so.1.0
/home/johndoe/spack/opt/spack/linux-ubuntu20.04-icelake/gcc-9.4.0/python-3.9.12-u6gyvcymxwzo473x74kompq34gtenrwk/lib/python3.9/config-3.9-x86_64-linux-gnu/libpython3.9.a
/home/paolo/anaconda3/lib/libpython3.9.so
/home/paolo/anaconda3/lib/libpython3.9.so.1.0
/home/paolo/anaconda3/pkgs/python-3.9.7-h12debd9_1/lib/libpython3.9.so
/home/paolo/anaconda3/pkgs/python-3.9.7-h12debd9_1/lib/libpython3.9.so.1.0

@berceanu
Copy link
Author

berceanu commented May 5, 2022

make:

Linking smilei
/usr/bin/ld: cannot find -lpython3.9
/usr/bin/ld: cannot find -lintl
collect2: error: ld returned 1 exit status
make: *** [makefile:298: smilei] Error 1

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment