错误./vpdetection:/gpfs/apps/x86_64-rhel5/matlab/R2012a/sys/os/glnxa64/libstdc++.so.6:未找到版本'GLIBCXX_3.4.14' [英] Error ./vpdetection: /gpfs/apps/x86_64-rhel5/matlab/R2012a/sys/os/glnxa64/libstdc++.so.6: version `GLIBCXX_3.4.14' not found
问题描述
- Linux版本是红帽企业Linux服务器版本5.9(Tikanga )。
- gcc版本为4.1.2。
- MALTAB版本为R2012b。
MALTAB中导致问题的语句是:
$ b $ pre $ [status,result] = system ('./vpdetection lines.tmp lines.out');
我遇到如下错误:
./ vpdetection:/gpfs/apps/x86_64-rhel5/matlab/R2012a/sys/os/glnxa64/libstdc++.so.6:版本'GLIBCXX_3.4.14'找不到
我搜索了几个解决方案,但都需要编辑系统文件。
由于我在服务器上运行的代码中没有 sudo
编辑系统文件的权限。
我试过<$ c
有没有其他的解决方法不需要编辑系统文件? $ c> ldd 命令。结果如下: [sxh415 @ cyberstar vpdetection] $ ldd matlab / vpdetection
matlab / vpdetection:/ usr / lib64 / libstdc ++。so.6:未找到'GLIBCXX_3.4.9'版本(matlab / vpdetection要求)
matlab / vpdetection:/usr/lib64/libstdc++.so.6:version'GLIBCXX_3.4.14'未找到(需要matlab / vpdetection)
matlab / vpdetection:/usr/lib64/libstdc++.so.6:找不到版本'GLIBCXX_3.4.11'(需要matlab / vpdetection)
linux-vdso .so.1 => (0x00007ffff7ff8000)
libstdc ++。so.6 => /usr/lib64/libstdc++.so.6(0x0000003845400000)
libm.so.6 => /lib64/libm.so.6(0x0000003840400000)
libgcc_s.so.1 => /lib64/libgcc_s.so.1(0x0000003844c00000)
libc.so.6 => /lib64/libc.so.6(0x0000003840000000)
/lib64/ld-linux-x86-64.so.2(0x000000383fc00000)
ldd
: Shell
$ ldd ./vpdetection
code>
MATLAB
> > !ldd ./vpdetection
要解决任何依赖冲突,请尝试使用 LD_PRELOAD
启动MATLAB本身或可执行文件时:
$ LD_PRELOAD = / path / to / libstdc ++。so matlab
或
>>系统('LD_PRELOAD = / path / to / libstdc ++。so ./vpdetection lines.tmp lines.out')
I am now trying to run some MATLAB code in Linux environment:
- Linux version is Red Hat Enterprise Linux Server release 5.9 (Tikanga).
- gcc version is 4.1.2.
- MALTAB version is R2012b.
The statement in MALTAB that causes the problem is:
[status, result] = system('./vpdetection lines.tmp lines.out');
I got an error as follows:
./vpdetection: /gpfs/apps/x86_64-rhel5/matlab/R2012a/sys/os/glnxa64/libstdc++.so.6: version `GLIBCXX_3.4.14' not found
I have googled several solutions but they all require editing system files.
Since I am running the code on server where I don't have sudo
right to edit system files.
Are there any other workarounds that don't need to edit system files?
I have tried ldd
command. The result is as follows:
[sxh415@cyberstar vpdetection]$ ldd matlab/vpdetection
matlab/vpdetection: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.9' not found (required by matlab/vpdetection)
matlab/vpdetection: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14' not found (required by matlab/vpdetection)
matlab/vpdetection: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.11' not found (required by matlab/vpdetection)
linux-vdso.so.1 => (0x00007ffff7ff8000)
libstdc++.so.6 => /usr/lib64/libstdc++.so.6 (0x0000003845400000)
libm.so.6 => /lib64/libm.so.6 (0x0000003840400000)
libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x0000003844c00000)
libc.so.6 => /lib64/libc.so.6 (0x0000003840000000)
/lib64/ld-linux-x86-64.so.2 (0x000000383fc00000)
Run ldd
on your executable both inside MATLAB and outside on the system shell:
Shell
$ ldd ./vpdetection
MATLAB
>> !ldd ./vpdetection
To solve any dependency conflicts, try using LD_PRELOAD
when launching either MATLAB itself or the executable:
$ LD_PRELOAD=/path/to/libstdc++.so matlab
or
>> system('LD_PRELOAD=/path/to/libstdc++.so ./vpdetection lines.tmp lines.out')
这篇关于错误./vpdetection:/gpfs/apps/x86_64-rhel5/matlab/R2012a/sys/os/glnxa64/libstdc++.so.6:未找到版本'GLIBCXX_3.4.14'的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!