UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

cancel
Showing results for 
Search instead for 
Did you mean: 
Observer buckd
Observer
2,678 Views
Registered: ‎08-13-2016

One solution to error: "Failed to compile generated C file xsim.dir/ ... /xsim_1.c"

Hi,

 

Background

 

This is just to help those that run an unsupported Linux OS (I run openSUSE Leap) and Vivado 2017.4, and for practical purposes cannot or do not want to run on a supported Linux OS (which is the proper solution to this error).  Here is what the error looks like when you try to run some sort of simulation:

 

ERROR: [XSIM 43-3409] Failed to compile generated C file xsim.dir/cmpy_v6_control_b026c1cb9d0f3349afc505b487268840_behav/obj/xsim_1.c.
ERROR: [XSIM 43-3915] Encountered a fatal error. Cannot continue. Exiting...

 

Finding the real error

 

In a shell, first enable the command line tools:

 

source ~/apps/xilinx/SDK/2017.4/settings64.sh

To find the real error, you have to go to the directory where the 'elaborate' step was running, in my case it was something like this:

 

/tmp/xlsimuCWk1A/hdl_netlist/xelab.sim/sim_1/behav/xsim

and run the 'elaborate.sh' script (in a shell) and you'll see it runs a giant command like this:

 

xelab -wto 38b04a6a34d44e6991b3b61d4c3cc3bb --incr --debug off --dll --relax --mt 8 -L axi_utils_v2_0 -L xbip_utils_v3_0 -L mult_gen_v12_0 -L cmpy_v6_0 -L xbip_pipe_v3_0 -L work -L unisims_ver -L unimacro_ver -L secureip -L xpm --snapshot cmpy_v6_control_b026c1cb9d0f3349afc505b487268840_behav work.cmpy_v6_control_b026c1cb9d0f3349afc505b487268840 work.glbl -log elaborate.log

Run that same command (with no path on the front of 'xelab'), but add an additional flag '-v 2' to enable extra verbosity.  This will spit out where the real error was coming from.  In my case this was it:

 

~/apps/xilinx/Vivado/2017.4/data/../tps/llvm/3.1/lnx64.o/bin/clang: ~/apps/xilinx/Vivado/2017.4/lib/lnx64.o/SuSE/libtinfo.so.5: no version information available (required by /lib64/libncurses.so.5)
~/apps/xilinx/Vivado/2017.4/data/../tps/llvm/3.1/lnx64.o/bin/clang: relocation error: /lib64/libncurses.so.5: symbol _nc_putchar_sp, version NCURSES_TINFO_5.9.20150530 not defined in file libtinfo.so.5 with link time reference
ERROR: [XSIM 43-3409] Failed to compile generated C file xsim.dir/cmpy_v6_control_b026c1cb9d0f3349afc505b487268840_behav/obj/xsim_1.c.
ERROR: [XSIM 43-3915] Encountered a fatal error. Cannot continue. Exiting...

Ah ha!  A clang/library error!

 

Solution

 

I found the offending library at:

 

~/apps/xilinx/Vivado/2017.4/lib/lnx64.o/SuSE/libtinfo.so.5

The fix was to use the system's libtinfo.so.5 instead of the bundled one with Xilinx, and just soft-link to it:

 

cd ~/apps/xilinx/Vivado/2017.4/lib/lnx64.o/SuSE
mkdir exclude
mv libtinfo.so.5 exclude/
ln -s /lib64/libtinfo.so.5

 

And...  success!  The demos in the System Generator for DSP work!

 

I hope this helps someone.

 

 

 

3 Replies
Moderator
Moderator
2,599 Views
Registered: ‎04-24-2013

Re: One solution to error: "Failed to compile generated C file xsim.dir/ ... /xsim_1.c"

HI @buckd,

 

Thank you for providing this information.

 

As you mentioned it is better to use a supported OS, but this may help other users.

Best Regards
Aidan

 

------------------------------------------------------------------------------------------------------------------
Please mark the Answer as "Accept as solution" if this answered your question
Give Kudos to a post which you think is helpful and may help other users
------------------------------------------------------------------------------------------------------------------
0 Kudos
Highlighted
Visitor jano35813
Visitor
1,795 Views
Registered: ‎02-02-2019

Re: One solution to error: "Failed to compile generated C file xsim.dir/ ... /xsim_1.c"

hi!

 

I was having a similar issue with the 'elaborate' process in the simulation, but I'm running Vivado 2018.3 in Arch Linux and the process fails to locate the libs. The solution was similar to yours: softlink to the system libraries.

in the folder <wherever_your_install_is>/Vivado/2018.3/lib/lnx64.o/ there are two folders, one for SuSe and one for Ubuntu, both contains a few libraries which, I guess, should be different from one system to the other.

In my case when I added the -v to the end of the line inside elaborate.sh (I cannot run only this line in a terminal, seems like I need more envars, but running the elaborate.sh from the folder who contains it, works), I get

Compiling architecture behavioral of entity xil_defaultlib.blink_leds
ICR Memory Usage: 98KB, 1024KB
ICR Memory Usage: 98KB, 1024KB
/home/jano/pynq/Vivado/Vivado/2018.3/data/../tps/llvm/3.1/lnx64.o/bin/clang -fPIC -c -std=gnu89 -nobuiltininc -nostdinc++ -w -Wl,--unresolved-symbols=ignore-in-object-files -fbracket-depth=1048576 -I/home/jano/pynq/Vivado/Vivado/2018.3/data/../tps/llvm/3.1/lnx64.o/bin/../lib/clang/3.1/include -fPIC -m64 -I"/home/jano/pynq/Vivado/Vivado/2018.3/data/xsim/include" "xsim.dir/blink_leds_behav/obj/xsim_1.c" -O0 -sim -o "xsim.dir/blink_leds_behav/obj/xsim_1.lnx64.o" -DXILINX_SIMULATOR
/home/jano/pynq/Vivado/Vivado/2018.3/data/../tps/llvm/3.1/lnx64.o/bin/clang: error while loading shared libraries: libncurses.so.5: cannot open shared object file: No such file or directory
ERROR: [XSIM 43-3409] Failed to compile generated C file xsim.dir/blink_leds_behav/obj/xsim_1.c.
ERROR: [XSIM 43-3915] Encountered a fatal error. Cannot continue. Exiting... 

here we can see, clang is unable to find libncurses.so.5, so I made a link in Vivado/2018.3/lib/lnx64.o/ to the system libs:

Vivado/2018.3/lib/lnx64.o$ ln -s /usr/lib/libncursesw.so.6.1 libncurses.so.5

and now I can compile the simulation succesfully!

Just in case, I also linked the other libs I found in the Ubuntu folder to the system libs in Vivado/2018.3/lib/lnx64.o/ , I don't know if they are going to be needed for other purposes.

 

Visitor yujie6
Visitor
895 Views
Registered: ‎10-17-2019

Re: One solution to error: "Failed to compile generated C file xsim.dir/ ... /xsim_1.c"

Thanks so much!! Your solution really works! It saves a lot of time for me

0 Kudos