How do I run Mentor Modelsim/Questa in Ubuntu 18.04?

I was trying to execute Mentor Modelsim/Questa in Ubuntu 18.04 but it returns the following error message:

Error in startup script: 
Initialization problem, exiting.

Initialization problem, exiting.

    while executing
"InitializeINIFile quietly"
    invoked from within
"ncFyP12 -+"
    (file "/mtitcl/vsim/vsim" line 1)
** Fatal: Read failure in vlm process (0,0)

That's because required library dependencies are up-to-date in Ubuntu 18.04. I tried to apply some suggestions from:

  • Making ModelSim ALTERA STARTER EDITION vsim 10.1d work on Ubuntu 14.04
  • ModelSim Installation issues

and other similar suggestions. However, none of these works with Ubuntu 18.04 LTS.


To solving that problem is installing libfreetype6 and libpng12. First you need to add 32 bit lib options:

sudo dpkg --add-architecture i386
sudo apt-get update
sudo apt-get install build-essential
# You already had build-essential and gcc, g++ etc. But you will also need to install the 32 bit versions.

Those libs are up-to-date in Ubuntu 18.04, so we need to download the Modelsim/Questa compatible libraries:

MODELSIM DEP LIBS

wget http://security.ubuntu.com/ubuntu/pool/main/libp/libpng/libpng12-0_1.2.54-1ubuntu1.1_amd64.deb
wget http://security.ubuntu.com/ubuntu/pool/main/libp/libpng/libpng12-0_1.2.54-1ubuntu1.1_i386.deb
wget http://archive.ubuntu.com/ubuntu/pool/main/f/freetype/libfreetype6_2.6.1-0.1ubuntu2_i386.deb
wget http://archive.ubuntu.com/ubuntu/pool/main/f/freetype/libfreetype6_2.6.1-0.1ubuntu2_amd64.deb
sudo dpkg -i libpng12-0_1.2.54-1ubuntu1.1_i386.deb
sudo dpkg -i libpng12-0_1.2.54-1ubuntu1.1_amd64.deb
sudo dpkg -i libfreetype6_2.6.1-0.1ubuntu2_i386.deb
sudo dpkg -i libfreetype6_2.6.1-0.1ubuntu2_amd64.deb 

Obs.: Make sure all libs was successfully installed.

Also, you must guarantee the installation of the following libs:

sudo apt-get install gcc-multilib g++-multilib \
lib32z1 lib32stdc++6 lib32gcc1 \
expat:i386 fontconfig:i386 libfreetype6:i386 libexpat1:i386 libc6:i386 libgtk-3-0:i386 \
libcanberra0:i386 libpng12-0:i386 libice6:i386 libsm6:i386 libncurses5:i386 zlib1g:i386 \
libx11-6:i386 libxau6:i386 libxdmcp6:i386 libxext6:i386 libxft2:i386 libxrender1:i386 \
libxt6:i386 libxtst6:i386

After that, Modelsim/Questa works normally.