MATLAB not Starting on Ubuntu 18.04 with Intel Compilers

23 views (last 30 days)
Dear all,
I've succesfully installed MATLAB R2017b on an Ubuntu 18.04 machine, but every time I try to start it I receive this error:
MATLAB is selecting SOFTWARE OPENGL rendering.
/usr/local/MATLAB/R2017b/bin/glnxa64/MATLAB: symbol lookup error: /opt/intel/compilers_and_libraries_2018.2.199/linux/compiler/lib/intel64/libirng.so: undefined symbol: __intel_skx_avx512_memcpy
Why is MATLAB interacting with libraries from the Intel compilers? How can I solve such crash?
UPDATE: the symbol is actually undefined:
$ nm -D /opt/intel/compilers_and_libraries_2018.2.199/linux/compiler/lib/intel64/libirng.so | grep __intel_skx_avx512_memcpy
U __intel_skx_avx512_memcpy
But libirng.so, as far as I understand, is an intel-only library, so it shouldn't be needed by MATLAB...
Thank you!
  4 Comments
Federico
Federico on 31 May 2018
It is open, but there are no replies at the moment, so I checked in here to see if someone else experienced the same issues / had a workaround

Sign in to comment.

Accepted Answer

Federico
Federico on 1 Jun 2018
Edited: Federico on 8 Jun 2018
Dear all,
I am here answering my own question for anybody that can encounter the same problem. The issue was related to .bashrc directives. My .bashrc file included commands to source Intel's *.sh files and set default compilers (e.g.: export FC = /opt/intel/bin/ifort). By commenting out all the export and source commands related to Intel Compilers, MATLAB starts.
WORKAROUND #1: Instead of editing .bashrc every time, it is enough to preload one Intel library: the symbol is actually undefined in libirng, but it is defined in libirc.
Therefore it is enough to edit .bashrc once with:
LD_PRELOAD = /opt/intel/compilers_and_libraries_2018.2.199/linux/compiler/lib/intel64/libirc.so
This does the trick and MATLAB starts normally.
WORKAROUND #2:
Also a workaround to avoid editing the .bashrc file every single time. In case workaround #1 didn't work, wrap MATLAB initialization in a .desktop file like this:
[Desktop Entry]
Name=Matlab R2017b
Exec=bash --noprofile --norc -c 'exec YourPathToMatlab/matlab -desktop'
Icon=/home/modelstation/Pictures/matlab-icon.png
Terminal=false
Type=Application
This invokes the shell but in a way that it ignores the bashrc specifications. The -c flag makes it execute the string that follows and thus launch MATLAB.

More Answers (0)

Categories

Find more on Startup and Shutdown in Help Center and File Exchange

Products


Release

R2017b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!