versão `GLIBCXX_3.4.20' não encontrada

versão `GLIBCXX_3.4.20' não encontrada

Quando tento executar meu arquivo hdl com iverilog, recebo o seguinte erro:

/usr/local/lib/ivl/ivl: /opt/Xilinx/Vivado/2015.3/lib/lnx64.o/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by /usr/local/lib/ivl/ivl)

O mesmo acontece quando estou simulando no Xilinx.

Eu tentei de tudo nas postagens anteriores, mas nada parece funcionar. Além disso, quando eu faço

strings /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | grep GLIBCXX

Eu recebo o seguinte:

GLIBCXX_3.4
GLIBCXX_3.4.1
GLIBCXX_3.4.2
GLIBCXX_3.4.3
GLIBCXX_3.4.4
GLIBCXX_3.4.5
GLIBCXX_3.4.6
GLIBCXX_3.4.7
GLIBCXX_3.4.8
GLIBCXX_3.4.9
GLIBCXX_3.4.10
GLIBCXX_3.4.11
GLIBCXX_3.4.12
GLIBCXX_3.4.13
GLIBCXX_3.4.14
GLIBCXX_3.4.15
GLIBCXX_3.4.16
GLIBCXX_3.4.17
GLIBCXX_3.4.18
GLIBCXX_3.4.19
GLIBCXX_3.4.20
GLIBCXX_3.4.21
GLIBCXX_DEBUG_MESSAGE_LENGTH

Então suponho que a versão mais recente já esteja presente. Incapaz de descobrir a solução.

Responder1

cd xilinx_path/ISE_DS/common/lib/lin64
sudo mv libstdc++.so.6 libstdc++.so.6.orig
sudo ln -s /usr/lib/libstdc++.so.6.0.14 libstdc++.so.6

Isso resolveu meu problema.

Responder2

Também adicionei caminhos adicionais ao LD_LIBRARY_PATH que estavam causando problemas com ferramentas não relacionadas (svn no meu caso).

Eu tive:

LD_LIBRARY_PATH=/opt/Xilinx/14.7/ISE_DS/ISE/lib/lin64:/opt/Xilinx/14.7/ISE_DS/EDK/lib/lin64:/opt/Xilinx/14.7/ISE_DS/common/lib/lin64:...etc...

O sistema está pesquisando estes antes de /usr/lib, então estava encontrando o obsoleto do Xilinx.

Para consertar eu fiz:

cd /opt/Xilinx/14.7/ISE_DS/ISE/lib/lin64/
sudo mv libstdc++.so.6 libstdc++.so.6.orig
ln -s /usr/lib/libstdc++.so.6.0.19 libstdc++.so.6

e

cd /opt/Xilinx/14.7/ISE_DS/common/lib/lin64/
sudo mv libstdc++.so.6 libstdc++.so.6.orig
ln -s /usr/lib/libstdc++.so.6.0.19 libstdc++.so.6

Não há libstdc++.so.6 no diretório EDK, então isso foi suficiente.

Acontece que estou rodando no Centos 7, mas isso pode ser uma informação útil em geral.

informação relacionada