gpt4 book ai didi

c++ - 在 mex 下编译 vtk 示例时找不到 GLIBCXX

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:08:07 24 4
gpt4 key购买 nike

我一直在努力关注this example在 Ubuntu 11.10 上使用 mex 在 MATLAB 中编译 vtk。我使用的mex命令如下:

mex -I/usr/include/vtk-5.6 vtk_file.cpp -L/usr/lib/ -lvtkFiltering -lvtkRendering -lvtkCommon

编译后我有一个 .mexa64 文件。

但是,当我尝试运行该文件时,我遇到了以下错误:

Invalid MEX-file '/home/bill/Documents/MATLAB/vtk/vtk_file.mexa64': 
/usr/local/MATLAB/R2011b/bin/glnxa64/../../sys/os/glnxa64/libstdc++.so.6:
version `GLIBCXX_3.4.11' not found (required by /usr/lib/libvtkFiltering.so.5.6)

如何确保找到 glibcxx?我本以为它会默认包含在编译中。

最佳答案

Matlab 使用它自己的 glibc 库,因此它经常是一团糟。

要解决该问题,您应该首先尝试确保 matlab 使用受支持的 gcc 版本。编译时会收到警告吗?

如果你是 sudoer,你也可以通过做类似的事情来“强制”matlab 使用标准的 glibc(我做到了,它工作正常):

cd /usr/local/MATLAB/R2011a/sys/os/glnxa64
sudo mkdir old
sudo mv libstdc++.so.6* old
sudo ln -s /usr/lib/x86_64-linux-gnu/libstdc++.so.6 libstdc++.so.6

很多人在互联网上提示,如果这两个都不行,有不同的解决方案。

关于c++ - 在 mex 下编译 vtk 示例时找不到 GLIBCXX,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8421708/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com