cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
kkoorndyk
Contributor
Contributor
1,259 Views
Registered: ‎02-12-2009

Vivado 2018.2 on Ubuntu 17.10 - "awk: symbol lookup error: awk: undefined symbol: mpfr_z_sub" error is back again

Yes, I'm violating the cardinal rule by creating a new post in a separate sub-forum, but this is likely the more appropriate sub-forum for this topic.

 

My previous post is here.

 

First off - YES, I know Ubuntu 17.10 is not a supported version.  Unfortunately, 16.04.1 LTS didn't contain the HW RAID drivers needed to even install the OS, so we opted to install 17.10 with the intention of upgrading to 18.04.1 LTS as soon as its released.

 

I have two development servers.  One older server, and one brand new server:

 

Old Server Name: Builder

OS: Ubuntu Server 14.04.1 LTS

Matlab: R2017a

Xilinx Vivado: 2017.3, 2017.4, 2018.1

 

New Server Name: Builder10

OS: Ubuntu Server 17.10

Matlab: R2018a

Xilinx Vivado: 2017.3, 2017.4, 2018.1, 2018.2

 

Vivado 2017.3 with Matlab R2017a on Builder (Ubuntu Server 14.04.1 LTS) worked fine.  

 

I made the mistake of installing Vivado System Edition 2018.2 *before* I had installed Matlab on Builder10, so when the System Generator Matlab Configurator window popped up, I canceled it.  I suspect this step configures some files somewhere in the Vivado installation directory with path information for the Matlab installation.

 

I installed Xilinx Vivado 2018.2 on Builder10, then a few days later installed Matlab 2018a on Builder10, deactivated the license on Builder, and finally activated the license on Builder10.  I uninstalled Vivado 2018.2 on Builder10 and reinstalled it in an attempt to get the System Generator Matlab Configurator (sg_config.exe in Windows land) to launch, but it didn’t, so I’m concerned that *something* didn’t get configured properly.

 

We typically source the Vivado settings.sh shell script to set up our environment for the Xilinx tools.  The Answer Record I referred to before indicated that the problem was with that same script in older versions of the tool also including the setting of the LD_LIBRARY_PATH env variable, which was removed in newer versions of the tool.  See AR# 66998.

 

Running SysGen on Builder:

 

@ubuntu:~$ source /opt/Xilinx/Vivado/2017.3/settings64.sh
@ubuntu:~$ sysgen
Configuring MATLAB runtime using Xilinx Supplied .matlab7rc.sh file copied to your home directory
MATLAB is selecting SOFTWARE OPENGL rendering.
License checkout failed.
License Manager Error -2
Make sure that the formatting of the license file is correct.
When editing the license file use a basic text editor.

Troubleshoot this issue by visiting:
http://www.mathworks.com/support/lme/R2017a/2

Diagnostic Information:
Feature: MATLAB
License path: /home/k/.matlab/R2017a_licenses:/opt/MATLAB/R2017a/licenses/license.dat:/opt/MATLAB/R2017a/licens
es/license_ubuntu_40651948_R2017a.lic
Licensing error: -2,413. System Error: 2

 

The license issue is expected because I moved the license to the new development server.  This just illustrates what gets reported on Builder with 2017.3 and Matlab R2017a.

 

Running SysGen on Builder10:

$ source /opt/Xilinx/Vivado/2018.2/settings64.sh
@builder10 [/home/.../home/k] Mon Jul 09 16:27:56 (0)
$ sysgen
ERROR: Could not find matlab 64-bit executable in the path. Please add the path to a matlab 64 bit executable to the PATH environment variable and try launching System Generator for DSP again.
ERROR: matlab does not exist

This error originates from the /opt/Xilinx/Vivado/2018.2/bin/sysgen script file.

 

I don’t have the Matlab directory added to my PATH env variable by default on Builder or Builder10, but just to help debug this effort, I’ll try adding it on Builder10:

k@builder10 [/home/.../home/k] Mon Jul 09 16:27:58 (0)
$ export PATH=${PATH}:/opt/MATLAB/2018a/bin
k@builder10 [/home/.../home/k] Mon Jul 09 16:30:03 (0)
$ echo $PATH
/opt/Xilinx/Model_Composer/2018.2/bin:/opt/Xilinx/SDK/2018.2/bin:/opt/Xilinx/SDK/2018.2/gnu/microblaze/lin/bin:/opt/Xilinx/SDK/2018.2/gnu/arm/lin/bin:/opt/Xilinx/SDK/2018.2/gnu/microblaze/linux_toolchain/lin64_le/bin:/opt/Xilinx/SDK/2018.2/gnu/aarch32/lin/gcc-arm-linux-gnueabi/bin:/opt/Xilinx/SDK/2018.2/gnu/aarch32/lin/gcc-arm-none-eabi/bin:/opt/Xilinx/SDK/2018.2/gnu/aarch64/lin/aarch64-linux/bin:/opt/Xilinx/SDK/2018.2/gnu/aarch64/lin/aarch64-none/bin:/opt/Xilinx/SDK/2018.2/gnu/armr5/lin/gcc-arm-none-eabi/bin:/opt/Xilinx/SDK/2018.2/tps/lnx64/cmake-3.3.2/bin:/opt/Xilinx/Vivado/2018.2/bin:/opt/Xilinx/DocNav:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/opt/mentor/10.7/questasim/linux_x86_64:~/utils:/opt/MATLAB/2018a/bin

Okay, let’s try running SysGen again:

 

$ sysgen
awk: symbol lookup error: awk: undefined symbol: mpfr_z_sub

Internal error 2: Could not determine the path of the
                  MATLAB root directory.

                  original command path = /opt/MATLAB/2018a/bin/matlab
                  current  command path = /opt/MATLAB/2018a/bin/matlab

                  Please contact:

                      MathWorks Technical Support

                  for further assistance.

 

The “Internal error 2:” originates from the /opt/MATLAB/2018a/bin/matlab script on line 427:

 

k@builder10 [/home/.../home/k] Mon Jul 09 16:41:25 (0)
$ grep /opt/MATLAB/2018a/bin/matlab -ine "internal error 2" -A 10 -B 4
423-        lscmd=`ls -l $newbase 2>/dev/null`
424-    if [ ! "$lscmd" ]; then
425-#++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
426-    echo ''
427:    echo 'Internal error 2: Could not determine the path of the'
428-    echo '                  MATLAB root directory.'
429-    echo ''
430-    echo "                  original command path = $filename"
431-    echo "                  current  command path = $filename"
432-    echo ''
433-    echo '                  Please contact:'
434-    echo ''
435-    echo '                      MathWorks Technical Support'
436-    echo ''
437-    echo '                  for further assistance.'

Since I don’t have the Matlab directory added to my PATH env variable, I think this just got me a step or two further in the process.  I’m thinking that because the following window did NOT pop up during 2018.2 installation, the environment didn’t get set up properly.

 

Matlab runs fine.

 

The other issues previously reported having to do with 'awk' being used in the ../bin/loader, ../bin/sysgen, etc. scripts don't apply because it appears that 'awk' is no longer used in any of those scripts.

 

The error appears to be generated by the /opt/MATLAB/2018a/bin/matlab script
...which also happens to run 'awk'.

 

I'm wondering if this error is occurring due to the awk command failing and not producing the appropriate intermediate results, or if it's a problem with the fact that the Xilinx installation isn't set up properly because I didn't identify the Matlab installation directory at installation time.

 

I also noticed that I have a .matlab7rc.sh script in my user home directory on Builder, but not on Builder10.  There are two copies of the .matlab7rc.sh script to be found on the server, one in the MATLAB installation directory and one in the Xilinx installation directory.  The one in my HOME directory matches the one provided by Xilinx.

 

/opt/Xilinx/Vivado/2017.3/data/sysgen/.matlab7rc.sh

/opt/MATLAB/R2017a/bin/.matlab7rc.sh

 

Does anybody have any ideas?

 

 

 

DornerWorks
https://goo.gl/LNexn5



Xilinx Alliance Program - Premier Tier
0 Kudos
1 Reply
nathanx
Moderator
Moderator
1,143 Views
Registered: ‎08-01-2007

Can you try to launch the tools  by "run as administor"?

0 Kudos