Building rpm package
arnaud gaboury
arnaud.gaboury at gmail.com
Tue Sep 8 08:04:17 UTC 2015
First try at building a rpm package and as feared, errors are returned.
Fedora 22
I wrote my own .spec file based on this package[0]. My goal is to
build R using Intel Compiler and MKL. The whole part of the spec file
is untouched, except for the configure, variables and flag part.
At the begining of %build section, I have added this:
-------------------
%build
.......
source /opt/intel/compilers_and_libraries_2016/linux/mkl/bin/mklvars.sh intel64
source /opt/intel/bin/compilervars.sh intel64
_mkllibpath=${MKLROOT}/lib/intel64
_openmplibpath=${PROD_DIR}/compiler/lib/intel64
export LD_LIBRARY_PATH=${_mkllibpath}:${_openmplibpath}
export MKL="-L${_mkllibpath} -L${_openmplibpath} -lmkl_intel_ilp64
-lmkl_core -lmkl_intel_thread -liomp5 -lpthread -lm"
------------------------------------------------
$ cat CONFIGURE.log | grep -A30 'R is now'
-----------------------------------------------
757- Source directory: .
758- Installation directory: /usr
759-
760- C compiler: icc -std=c99 -ip -O3
-opt-mem-layout-trans=3 -xHost -mavx -fp-model precise -wd188
-DMKL_ILP64 -qopenmp -parallel
-I/opt/intel/compilers_and_libraries_2016.0.109/linux/mkl/include
761- Fortran 77 compiler: ifort -ip -O3
-opt-mem-layout-trans=3 -xHost -mavx -fp-model precise -DMKL_ILP64
-qopenmp -parallel
-I/opt/intel/compilers_and_libraries_2016.0.109/linux/mkl/include
762-
763- C++ compiler: icpc -ip -O3 -opt-mem-layout-trans=3
-xHost -mavx -fp-model precise -DMKL_ILP64 -qopenmp-parallel
-I/opt/intel/compilers_and_libraries_2016.0.109/linux/mkl/include
764- C++ 11 compiler: icpc -std=c++11 -ip -O3
-opt-mem-layout-trans=3 -xHost -mavx -fp-model precise -DMKL_ILP64
-qopenmp-parallel
-I/opt/intel/compilers_and_libraries_2016.0.109/linux/mkl/include
765- Fortran 90/95 compiler: ifort -ip -O3 -opt-mem-layout-trans=3
-xHost -mavx -fp-model precise -DMKL_ILP64 -qopenmp -parallel
-I/opt/intel/compilers_and_libraries_2016.0.109/linux/mkl/include
766- Obj-C compiler: gcc -g -O2 -fobjc-exceptions
767-
768- Interfaces supported: tcltk
769- External libraries: readline, zlib, bzlib, lzma, PCRE, tre, curl
770- Additional capabilities: PNG, JPEG, TIFF, NLS, ICU
771- Options enabled: shared R library, shared BLAS, R
profiling, memory profiling, static HTML
----------------------------------------------
The first two lines source scripts to populate environment variables.
1- I am surprised not to see these variables when running $ env from
my build shell. Any reason?
2- the build fails (cannot find ICC) IF I do not source these two
scripts before I run $ rpmbuild. When these variables are set, make
succeed.
I guess these two lines (source
/opt/intel/compilers_and_libraries_2016/linux/mkl/bin/mklvars.sh
intel64
source /opt/intel/bin/compilervars.sh intel64 are not read by
rpmbuild. Maybe the shell command source is wrong ?
Hint: shell is zsh (normally I can build everything)
Thank you for hints
--
google.com/+arnaudgabourygabx
More information about the devel
mailing list