I'm trying installing the MKL package as part of the parallel studio xe suite or by itself. When trying both routes, the installer says that I'm missing a number of optional prerequisites because the OS is incompatible:
Missing optional prerequisites
-- Intel(R) VTune(TM) Amplifier XE 2013 Update 13: Unsupported OS
-- Intel(R) Inspector XE 2013 Update 8: Unsupported OS
-- Intel(R) Advisor XE 2013 Update 5: Unsupported OS
-- Intel(R) Fortran Composer XE 2013 SP1 Update 1 for Linux*: Unsupported OS
-- Intel(R) C++ Composer XE 2013 SP1 Update 1 for Linux*: Unsupported OS
If I just install anyway, then the compilers I need for the MKL libraries (icc/ifort) don't install.
Mint 15 is built on linux 13.04, so it should be compatible. Is there a way to avoid this/temporarily trick the installer into thinking my system is Ubuntu 13.04?
here is from official Intel MKL 11.1 System Requirements:
- Ubuntu* 9 (for Intel MKL 10.3 - Intel MKL 10.3 update 3), 10.04, 11.04 (for Intel MKL 10.3 update 4 and later) (IA-32 / Intel® 64)
so I am not sure if there are some workaround for that right now, but I will ask to look at the problem experts from Install Team and may be He will give us some workarounds.
The MKL libraries definitely work for versions beyond Ubuntu 11.04. I have a coworker who has them running seamlessly on Ubuntu 13.04. Also, here's the prerequisite error I get when running the installer indicating that it is supported at least up to 13.04:
Detected operating system is not supported. Supported operating systems for this
- Ubuntu* 10.04, 11.10, 12.04, 12.10, 13.04;
- SuSE SLES* 10, 11;
- Red Hat Enterprise Linux* 5, 6, 7;
- Fedora* 17, 18, 19;
- Debian* 5.0, 6.0, 7.0;
- CentOS* 5, 6;
Unsupported OS pre-requisite is an optional one. So you can skip it and continue the installation.
Compilers also should be installed together with MKL. Could you go to the install directory and check if <installdir>/bin/<arch>/icc and ifort binaries are available? If it is in place, please command "source <installdir>/bin/compilervars.sh <arch>" to setup environment variables and try to call icc or ifort again.
If it does not help, could you send me a log file from /tmp/intel.pset.<userid>.***.log?
Thanks, - Nikolay
I do see the icc and ifort executables in (...)/intel/composer_xe_2013_sp1.1.106/bin/intel64
Here's the command I used to run the environment variable scripts:
(...)/intel/composer_xe_2013_sp1.1.106/bin $ source compilervars.sh intel64
The icc and ifort executables are still not found unless I call them in their folder though. It seems like the environment variables aren't being setup correctly. What should the environment variables looks like?
Please find attached the script with the list of env variables for #106 package for the example. I've used the installdir=/opt/intel and the architecture=intel64. Please change according to your local setup.
Please let me know if you have questions.
Thanks Nikolay! The icc and ifort compilers show up now, and I was able to successfully build numpy and scipy. The numpy nose tests passed fine. I get a few errors in the scipy nose tests, but I suspect it doesn't have anything to do with MKL.
Anyone else having issues with mint not being able to find, just edit the path variables to match your MKL folders, and make sure the script gets called before you try to build or import your python libraries using MKL. I just added "source prepareMKL.sh" to my .bashrc so that it gets called automatically on startup.
I have the same problem with Linux Mint 17.2 (based on Ubuntu 14.04 I think) and those products
After tweaking some environment variables in my .bashrc
# Eclipse export ECLIPSE_HOME=/opt/eclipse/cpp-mars/eclipse/ export GXX_ROOT=/usr/lib/gcc/x86_64-linux-gnu/4.8/ export LC_ALL=C # Intel compiler variables: # ande 20151013 CPATH=/opt/intel/compilers_and_libraries_2016.0.109/mkl/include:/opt/intel/compilers_and_libraries_2016.0.109/tbb/include INCLUDE=/opt/intel/compilers_and_libraries_2016.0.109/mkl/include LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/intel/compilers_and_libraries_2016.0.109/compiler/lib/intel64:/opt/intel/compilers_and_libraries_2016.0.109/mkl/lib/intel64:/opt/intel/compilers_and_libraries_2016.0.109/tbb/lib/intel64/gcc4.4 LIBRARY_PATH=/opt/intel/compilers_and_libraries_2016.0.109/compiler/lib/intel64:/opt/intel/compilers_and_libraries_2016.0.109/mkl/lib/intel64:/opt/intel/compilers_and_libraries_2016.0.109/tbb/lib/intel64/gcc4.4 MANPATH=$MANPATH:/opt/intel/compilers_and_libraries_2016.0.109/man/en_US MIC_LD_LIBRARY_PATH=/opt/intel/compilers_and_libraries_2016.0.109/mkl/lib/mic:/opt/intel/compilers_and_libraries_2016.0.109/tbb/lib/mic MIC_LIBRARY_PATH=/opt/intel/compilers_and_libraries_2016.0.109/tbb/lib/mic MKL_HOME=/opt/intel/compilers_and_libraries_2016.0.109/mkl NLSPATH=/opt/intel/compilers_and_libraries_2016.0.109/mkl/lib/intel64/locale/%l_%t/%N NLS_PATH=/opt/intel/compilers_and_libraries_2016.0.109/debugger/intel64/locale/%l_%t/%N:/opt/intel/compilers_and_libraries_2016.0.109/ipp/lib/intel64/locale/%l_%t/%N PATH=$PATH:/opt/intel/compilers_and_libraries_2016.0.109/linux/bin/intel64 _=parallel_studio_xe_2016.0.047 #_LMFILES_=/usr/share/Modules/modulefiles/intel/ipp/2015.2.164:/usr/share/Modules/modulefiles/intel/mkl/2015.2.164:/usr/share/Modules/modulefiles/intel/tbb/2015.2.164:/usr/share/Modules/modulefiles/intel-parallel-studio-2015
I get icpc to run:
icpc version 16.0.0 (gcc version 3.2.0 compatibility)
but when I try to compile, I get this:
make -j 1 -f Makefile COMPANY_TARGET_PLATFORM=Boss COMPANY_BUILD_PLATFORM=Boss COMPANY_CONFIG=ReleaseSerial COMPANY_FFAT_LIMIT=0 COMPANY_LICENSE_SERVER_TYPE=0 all
Processing configuration ReleaseSerial
Setting COMPANY_TARGET_VERSION to default value
COMPANY_TARGET_VERSION := undefined
Setting COMPANY_TARGET_USER to default value
COMPANY_TARGET_USER := Company_Name
COMPANY_TARGET_PLATFORM := Boss
Reading Platform specific settings for configuration ReleaseSerial from ./PlatformMakefileSettings/Makefile_Company_Boss_Boss
mkdir -p ReleaseSerial/AtomisticModelsLib
Building file: AtomisticModelsLib/AtomCoordinationTypeBase.cpp
icpc -O2 -DCOMPANY_TARGET_VERSION_STRING=\"undefined\" -DCOMPANY_TARGET_USER_STRING=\"Company_Name\" -DCOMPANY_FFAT_LIMIT=0 -DCOMPANY_LICENSE_SERVER_TYPE=0 -gcc-name=gcc34 -gcc-version=346 -I/include -I/usr/lib/gcc/x86_64-linux-gnu/4.8/include -I -I/opt/mtl4-9231/usr/include -MTReleaseSerial/AtomisticModelsLib/AtomCoordinationTypeBase.o -MMD -MP -MF"ReleaseSerial/AtomisticModelsLib/AtomCoordinationTypeBase.d" -MT"ReleaseSerial/AtomisticModelsLib/AtomCoordinationTypeBase.d" -fPIC -I./HeritageMathLib -I./MathLib -I./MTLLib -I./UtilitiesLib -I./WrappersLib -I./BoostLib -I./HeritageMathLib -I./HeritageSerializationLib -I./MathLib -I./MTLLib -I./UtilitiesLib -c -o "ReleaseSerial/AtomisticModelsLib/AtomCoordinationTypeBase.o" "AtomisticModelsLib/AtomCoordinationTypeBase.cpp"
icpc: command line remark #10010: option '-gcc-version=346' is deprecated and will be removed in a future release. See '-help deprecated'
icpc: error #10001: could not find directory in which the set of libstdc++ include files resides
make: *** [ReleaseSerial/AtomisticModelsLib/AtomCoordinationTypeBase.o] Error 1
As the environment variable of the 2013 edition seem to be different: where can I get the information which variables to set?
Wouldn't it be helpful to include LinuxMint in the list of supported OSes? It should be almost equally configured as Ubuntu..
Thanks in advance -
Env variables in your .bashrc look correct. You can double check it by sourcing the "compilervars.sh" script from following places:
2) Or <Install-dir>/compilers_and_libraries/linux/bin/compilervars.sh
From the error message it seems like a compiler can't find libstdc++ location. Did you get a warning during the installation that the compiler requires libstdc++ libraries? Please refer to Parallel Studio release notes to get the list of required libraries and make sure it is installer on your system.
Please let me know if you still have a problem after the installation of all required libraries.
thanks for your reply!
> From the error message it seems like a compiler can't find libstdc++ location.
> Did you get a warning during the installation that the compiler requires libstdc++ libraries?
For it is a while ago now I can't remember, sorry but I don't think so..
> Please refer to Parallel Studio release notes to get the list of required libraries and make sure it is installer on your system.
These release notes?
I could not find "libstdc" mentioned.. I'm only trying to solve things step by step.
This is what I find inside /usr:
Could you answer please?
Why is error number "icpc: error #10001" used for at least two cases: The aforementioned "missing libstdc++" and "could not find directory in which g++ resides" (which I managed to fix)
Honestly, the error number alone looks as if the programmer didn't want to get bothered.
Googling did not help. Nowhere see I "libstdc++" mentioned in the "release documents". I can only twiddle my thumbs and wait patiently.
You are right - I didn't find this information in release notes. It seems it was moved to another place. Sorry.
We need libstdc++.so.6, but icpc uses paths reported by your g++ to find the libstdc++ in the g++ installation. You need a full g++ development installation, with g++ active in your shell.
Could you kindly try instructions below:
1) Here is the article https://software.intel.com/en-us/articles/intel-c-compiler-for-linux-iccicpc-error-could-not-find-directory-in-which-g-resides
2) Here is the topic with the similar problem: https://software.intel.com/en-us/forums/intel-c-compiler/topic/486698
A few more about using Intel Compilers for Linux with Ubuntu: https://software.intel.com/en-us/articles/using-intel-compilers-for-linux-with-ubuntu
Please reply if you have problems.