Ubuntu 14.04 安装Anaconda后Caffe编译问题与解决

5星 · 超过95%的资源 需积分: 10 109 下载量 194 浏览量 更新于2024-09-09 4 收藏 116B TXT 举报
"在Ubuntu 14.04上安装Anaconda后尝试编译Caffe时遇到链接错误,问题出在libunwind库找不到lzma_index_size符号,此符号属于xz压缩库的5.0版本。解决方法是在.bashrc文件末尾添加路径以确保正确的库被加载。" 在Ubuntu 14.04系统中安装并使用Caffe,一个流行的深度学习框架,通常会涉及到一系列依赖库的安装和配置。在这个场景中,用户在安装了Anaconda这个Python分发版之后,尝试编译Caffe源代码时遇到了一个链接错误。错误信息表明 `/usr/lib/x86_64-linux-gnu/libunwind.so.8` 这个库在链接过程中无法找到名为 `lzma_index_size@XZ_5.0` 的函数引用,这通常是由于系统中缺少或版本不匹配的xz压缩库导致的。 XZ Utils是提供高压缩比的xz压缩算法的工具集,而lzma_index_size是其中的一个功能,用于获取xz压缩流的索引大小。在Ubuntu 14.04中,可能默认安装的xz库版本不包含这个特定的函数,或者Caffe的编译过程需要更高版本的库支持。 解决这个问题的方法是更新或安装正确版本的xz库。首先,可以尝试使用apt-get命令检查和升级现有的xz-utils: ```bash sudo apt-get update sudo apt-get upgrade xz-utils ``` 如果升级后问题仍然存在,可能需要手动安装特定版本的xz库。这通常涉及从源头编译,但需要注意的是,这可能会对系统的稳定性和兼容性产生影响。另一种解决方案是修改Caffe的Makefile,指定链接到具有所需版本的xz库的路径。 描述中的解决方案提供了一个临时的环境变量调整,通过在`~/.bashrc`文件的末尾添加以下行: ```bash export LD_LIBRARY_PATH="/lib/x86_64-linux-gnu:$LD_LIBRARY_PATH" ``` 然后运行`source ~/.bashrc`来使更改生效。这将把系统目录`/lib/x86_64-linux-gnu`添加到动态链接器的搜索路径中,希望能找到包含所需版本`lzma_index_size`函数的库。然而,这种方法并不总是可靠的,因为它可能会覆盖其他依赖项,并且在多用户环境中可能导致冲突。 更安全的做法是确认所有依赖项都已经正确安装并且版本匹配,包括更新其他可能需要的库,如protobuf、Boost等。此外,确保Caffe源码是最新版本,并且遵循其官方文档提供的编译指南。如果问题依然存在,可能需要查看Caffe的社区论坛或者向开发团队报告问题以获取更多帮助。