cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
jhgomez
Visitor
Visitor
1,471 Views
Registered: ‎04-17-2018

SDNet unsastified link error

Dear Community,

 

I am running P4-NetFPGA projects and when I run a sdnet command I get the following error

 

sdnet ./src/switch_calc.sdnet -skipEval -busType axi -busWidth 256 -singlecontrolport -workDir nf_sume_sdnet_ip -altVivadoScripts
Xilinx SDNet Compiler version 2017.4, build 2093981

Exception in thread "main" java.lang.UnsatisfiedLinkError: /home/p4/SDNet/2017.4/lib/lnx64.o/librdi_ppp.so: /home/p4/Vivado/2016.4/lib/lnx64.o/libstdc++.so.6: version `CXXABI_1.3.9' not found (required by /home/p4/SDNet/2017.4/lib/lnx64.o/librdi_ppp.so)
    at java.lang.ClassLoader$NativeLibrary.load(Native Method)
    at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1938)
    at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1854)
    at java.lang.Runtime.loadLibrary0(Runtime.java:870)
    at java.lang.System.loadLibrary(System.java:1122)
    at com.xilinx.ppp.Main.main(Unknown Source)
Makefile:64: recipe for target 'compile_no_cpp_test' failed
make: *** [compile_no_cpp_test] Error 1

 

 

 

I read some posts that a solution would be to re-install Vivado. I would really like to avoid it.

What could be the problem ??

 

Best Regards

 

Jorge Gomez

 

 

0 Kudos
4 Replies
jhgomez
Visitor
Visitor
1,428 Views
Registered: ‎04-17-2018

Dear Community, 

 

I realized that although the file (libstdc++.so.6) located in Vivado directory does not support ABI 1.3.9,  the local copy in Linux does.

strings /home/p4/Vivado/2016.4/lib/lnx64.o/libstdc++.so.6 | grep ABI_1.3.9
strigns /usr/lib64/libstdc++.so.6 | grep ABI_1.3.9
CXXABI_1.3.9

Therefore I created a link to that file:

 

mv /home/p4/Vivado/2016.4/lib/lnx64.o/libstdc++.so.6 libstdc++.so.6.orig 
ln -s /usr/lib64/libstdc++.so.6 /home/p4/Vivado/2016.4/lib/lnx64.o/libstdc++.so.6

But now I get this error:

/home/p4/Xilinx/Vivado/2016.4/tps/lnx64/jre/bin/java: symbol lookup error: /home/p4/SDNet/2017.4/lib/lnx64.o/librdi_ppp.so:  undefined symbol ....

 

I could not find any solution for this problem, so I decided to try Vivado 2017.4, which actually worked. Unfortunately I am setting up NetFPGA's opensource projects, which seem to only support SDK 2016.4, therefore I really need an installation with Vivado/SDK 2016.4 and SDNet. 

 

Then I realized some inconsistencies with SDNet license manager in the case that Vivado 2016.4 is installed (See attached image). As you can see, SDNet's Manage license button is deactivated and when the cursor is above it a text prompts stating "A license Manager is not requited for this installation"

Screenshot from 2018-04-19 16-55-11.png

 

I don't know if this may be related but I though it was worth to share it.

 

Any ideas how could I solve the 'symbol lookup error' ?

 

Best Regards

Jorge Gomez

 

0 Kudos
yyyyugao
Visitor
Visitor
1,206 Views
Registered: ‎08-13-2018

Hi Jorge,

 

Did you solve the problem about 'symbol lookup error'? I came with the similar problem. Hope that you can give me some instructions. thanks a lot!

 

Regards

Yu Gao

0 Kudos
prathikm
Moderator
Moderator
1,170 Views
Registered: ‎09-15-2016

Hi Yu Gao,

 

You can follow-up your query here: link.

 

Thanks

Prathik

-----------------------------------------------------------------------------------

Don't forget to reply, kudo, and mark the appropriate post as 'accept as solution'.

-----------------------------------------------------------------------------------

 

 

 

0 Kudos
nightwer
Visitor
Visitor
555 Views
Registered: ‎10-10-2018

Hi Yu Gao,

I also came with the similar problems, here is my solution.

 

To start Xilinx Vivado Design Suite, I source the following environment settings, and write them into

~/.bashrc:

export XILINX_PATH=/opt/Xilinx/Vivado/2016.4 
source /opt/Xilinx/Vivado/2016.4/settings64.sh
export SWT_GTK3=0

And I ran the example in SDNet, I got this error:

 

Xilinx SDNet Compiler version 2018.1, build 2213101

Exception in thread "main" java.lang.UnsatisfiedLinkError: /opt/Xilinx/SDNet/2018.1/lib/lnx64.o/librdi_ppp.so: /opt/Xilinx/Vivado/2016.4/lib/lnx64.o/libstdc++.so.6: version `CXXABI_1.3.9' not found (required by /opt/Xilinx/SDNet/2018.1/lib/lnx64.o/librdi_ppp.so)
at java.lang.ClassLoader$NativeLibrary.load(Native Method)
at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1938)
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1854)
at java.lang.Runtime.loadLibrary0(Runtime.java:870)
at java.lang.System.loadLibrary(System.java:1122)
at com.xilinx.ppp.Main.main(Unknown Source)

 

 

Then, I commented the "export XILINX_PATH=/opt/Xilinx/Vivado/2016.4" in "~/.bashrc", the problem was solved.

 

Here is the version of tools:

OS: Ubuntu16.04

Vivado Design Suite version: Vivado16.04

SDNet version: SDNet 2018.1

 

 

0 Kudos