unrar: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by unrar)如何解决
时间: 2024-02-01 07:10:51 浏览: 143
根据你提供的引用内容,你遇到的问题是在运行unrar命令时出现了错误提示:/lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by unrar)。这个错误提示表明你的系统缺少GLIBCXX_3.4.21版本的库文件。
由于你没有sudo权限,无法修改/usr/lib64/libstdc++.so.6软连接。但你可以尝试以下解决方法:
1. 使用LD_LIBRARY_PATH环境变量指定库文件路径:
```shell
export LD_LIBRARY_PATH=/path/to/your/library:$LD_LIBRARY_PATH
unrar
```
将"/path/to/your/library"替换为包含GLIBCXX_3.4.21版本库文件的目录路径。
2. 将所需的库文件复制到你有权限的目录下:
```shell
cp /path/to/your/library/libstdc++.so.6 /path/to/your/directory
unrar
```
将"/path/to/your/library/libstdc++.so.6"替换为包含GLIBCXX_3.4.21版本库文件的完整路径,将"/path/to/your/directory"替换为你有写权限的目录路径。
3. 如果以上方法都无法解决问题,你可以尝试使用静态链接版本的unrar,这样unrar将不再依赖系统的动态链接库:
```shell
wget https://www.rarlab.com/rar/unrarsrc-6.0.7.tar.gz
tar -zxvf unrarsrc-6.0.7.tar.gz
cd unrar
make lib
gcc -static -o unrar unrar.o -L./ -lstdc++
./unrar
```
这将下载unrar源代码并编译生成静态链接版本的unrar可执行文件。
阅读全文