cancel
Showing results for 
Search instead for 
Did you mean: 
Highlighted
Adventurer
Adventurer
1,014 Views
Registered: ‎11-07-2012

Vivado 2019.2 compile_simlib issues with systemc modules

Hi All,

I am using Vivado 2019.2 with Xcelium 19.03.009.

compile_simlib of the tool fails on systemc modules (like xtlm).

Using -verbose I saw that the tool is looking for some non existing path of Xcelium 19.03.005 (???)

 

Error details :

- Attached screenshot

- Cmd used :

compile_simlib -simulator xcelium -simulator_exec_path {PATH/Cadence/xcelium/19.03.009/tools.lnx86/bin} -family all -language all -library all -dir {OUTPUT_PATH/generated_simlib} -force -verbose

- From the Verbose - Identified vivado was adding strange .so to execution cmd from wrong xcelium version:

/tools/dist/xlm/19.03.005/tools/systemc/lib/64bit/gnu/libscBootstrap_sh.so /tools/dist/xlm/19.03.005/tools/systemc/lib/64bit/gnu/libxmscCoroutines_sh.so /tools/dist/xlm/19.03.005/tools/systemc/lib/64bit/gnu/libsystemc_sh.so 

 

Thanks in advance !

Yoti

Tags (2)
xilinx_support_vivado_2019_2.JPG
0 Kudos
13 Replies
Highlighted
Observer
Observer
962 Views
Registered: ‎03-02-2015

Re: Vivado 2019.2 compile_simlib issues with systemc modules

@yotam I came here to report the same problem.  I'm using Vivado 2019.2 and either Xcelium 19.03.001 or 19.09.005 (have tested with both, same results). I see the same nonexistent path and .so names in my logs:

g++: error: /tools/dist/xlm/19.03.005/tools/systemc/lib/64bit/gnu/libscBootstrap_sh.so: No such file or directory
g++: error: /tools/dist/xlm/19.03.005/tools/systemc/lib/64bit/gnu/libxmscCoroutines_sh.so: No such file or directory
g++: error: /tools/dist/xlm/19.03.005/tools/systemc/lib/64bit/gnu/libsystemc_sh.so: No such file or directory

It seems like the script or other code which invokes GCC to link together some systemc object files is hardcoded to expect the Xcelium installation to exist at /tools/dist/xlm/19.03.005.

I "fixed" this by using 'mkdir' and 'ln' to create a softlink at /tools/dist/xlm/19.03.005 pointing at the actual Xcelium 19.03 installation path. This reduced the error count from 14 libraries to 3.  Here's what I found with respect to the remaining 3 libraries:

  1. When trying to link libaxi_tg_sc_v1.0 (SystemC AXI traffic generator):
    • /usr/bin/ld: cannot find -lstdc++fs
  2. Many compilation errors while attempting to compile debug_tcp_server_v1, starting with:
    • /tools/Xilinx/Vivado/2019.2/data/systemc/simlibs/debug_tcp_server/debug_tcp_server_v1/src/RdWrTCPSocket.cpp: In member function 'void RdWrTCPSocket::DataTransfer()':
      /tools/Xilinx/Vivado/2019.2/data/systemc/simlibs/debug_tcp_server/debug_tcp_server_v1/src/RdWrTCPSocket.cpp:271:38: error: expected unqualified-id before '&' token
      catch (const std::invalid_argument& e) {
  3. Because debug_tcp_server_v1 failed to compile, we get a link error in librwd_tlmmodel_v1.so, which depends on it:
    • /usr/bin/ld: cannot find -ldebug_tcp_server_v1

I'm trying to do all this on CentOS Linux release 7.6.1810.

0 Kudos
Highlighted
Xilinx Employee
Xilinx Employee
952 Views
Registered: ‎07-16-2008

Re: Vivado 2019.2 compile_simlib issues with systemc modules

There does seem to be something wrong with the path.

Let me confirm and get back to you.

-------------------------------------------------------------------------
Don't forget to reply, kudo, and accept as solution.
-------------------------------------------------------------------------
0 Kudos
Highlighted
908 Views
Registered: ‎12-05-2019

Re: Vivado 2019.2 compile_simlib issues with systemc modules

Hi. having axactly the same issue.

Any updates on this?

 

thanks

0 Kudos
Highlighted
Xilinx Employee
Xilinx Employee
888 Views
Registered: ‎07-16-2008

Re: Vivado 2019.2 compile_simlib issues with systemc modules

There’s a bug in compile_simlib. These hard-coded paths are coming from that. A CR has been filed.

The dev team will try to get this fixed in 2019.2.2.

If these IPs are not utilized in your design, you can ignore the errors. Otherwise a possbile workaround is to manually modify the auto-generated compile script and re-run it.

Take XTLM IP for example,

go to <pre-compiled lib location>/xtlm/.cxl.systemc.xtlm.xtlm.lin64.cmd, modify the path for 'xmsc' and 'g++' compilers.

-------------------------------------------------------------------------
Don't forget to reply, kudo, and accept as solution.
-------------------------------------------------------------------------
Highlighted
Observer
Observer
861 Views
Registered: ‎03-02-2015

Re: Vivado 2019.2 compile_simlib issues with systemc modules

@graces What should the path to 'g++' be? When I try to run compile_simlib, every invocation of g++ in the generated *.cmd files uses the Linux distribution's default compiler, /usr/bin/g++. For example, would it be correct to modify *.cmd to use the Cadence bundled GCC at (Xcelium install dir)/tools.lnx86/cdsgcc/gcc/bin/g++?

 

0 Kudos
Highlighted
Xilinx Employee
Xilinx Employee
800 Views
Registered: ‎07-16-2008

Re: Vivado 2019.2 compile_simlib issues with systemc modules

compile_simlib will pick the g++ from the PATH. So if the PATH is pointing to /tools.lnx86/cdsgcc/gcc/bin first, then g++ will be picked from here. In your case it looks /usr/bin/g++ is pointed to first in the PATH.

-------------------------------------------------------------------------
Don't forget to reply, kudo, and accept as solution.
-------------------------------------------------------------------------
Highlighted
Observer
Observer
790 Views
Registered: ‎03-02-2015

Re: Vivado 2019.2 compile_simlib issues with systemc modules

After combining a workaround for the 2019.2 bug previously discussed with fixing my $PATH so cdsgcc comes first, I'm able to run compile_simlib with 0 errors. Thanks!

0 Kudos
Highlighted
414 Views
Registered: ‎04-21-2020

Re: Vivado 2019.2 compile_simlib issues with systemc modules

Has there been a resolution? I am encountering the same issue (compile_simlib looking for g++ in questasim path). On top of it, I am not able to find the .cmd file to modify.

@graces , can you help here? The path below does not exist for me.


go to <pre-compiled lib location>/xtlm/.cxl.systemc.xtlm.xtlm.lin64.cmd, modify the path for 'xmsc' and 'g++' compilers.


Thanks, Robert

0 Kudos
Highlighted
Xilinx Employee
Xilinx Employee
394 Views
Registered: ‎07-16-2008

Re: Vivado 2019.2 compile_simlib issues with systemc modules

The file should have been there. This is a hidden file. Please use "ls -a".

-------------------------------------------------------------------------
Don't forget to reply, kudo, and accept as solution.
-------------------------------------------------------------------------
0 Kudos
Highlighted
384 Views
Registered: ‎04-21-2020

Re: Vivado 2019.2 compile_simlib issues with systemc modules

Hi @graces, I am familiar with unix, and I am 100% sure a *.cmd file is not there. 

There is however a file called .cxl.questasim.g++.version:

$ more .cxl.questasim.g++.version
** Error: (sccom-95) Your installation directory does not contain the appropriate GNU C++ compiler. Download and install the tarball from the ftp site (questa_sim-gcc-linux_x86_64.mis for Questa Core/Prime or questasim-gcc-linux_x86_64.mis for Questa SV/AFV).
Errors: 1, Warnings: 0

What would be an "appropriate GNU C++ compiler"?
 

0 Kudos
Highlighted
Xilinx Employee
Xilinx Employee
349 Views
Registered: ‎07-16-2008

Re: Vivado 2019.2 compile_simlib issues with systemc modules

Then your error is totally a different one from the original posted one.

verror 95
#
# common Message # 95:
# QuestaSim's SystemC requires that you use a pre-configured g++ compiler.
# Your installation directory is missing the compiler installation.
# Download and install the appropriate tarball from the ftp site.

You need to fix from download and installation side.

-------------------------------------------------------------------------
Don't forget to reply, kudo, and accept as solution.
-------------------------------------------------------------------------
0 Kudos
Highlighted
331 Views
Registered: ‎04-21-2020

Re: Vivado 2019.2 compile_simlib issues with systemc modules

@graces thanks for the info!

One last thing to clarify:


@graces wrote:
...

# Download and install the appropriate tarball from the ftp site.

You need to fix from download and installation side.


The pre-configured gcc needs to come from the Questa vendor, not Xilinx, correct?

0 Kudos
Highlighted
Xilinx Employee
Xilinx Employee
329 Views
Registered: ‎07-16-2008

Re: Vivado 2019.2 compile_simlib issues with systemc modules

Yes, that's correct.

-------------------------------------------------------------------------
Don't forget to reply, kudo, and accept as solution.
-------------------------------------------------------------------------