You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu17下运行Doxygen提示找不到libclang.so.6的解决方法求助

解决Ubuntu 17中Doxygen找不到libclang.so.6的问题

我之前在老版本Ubuntu上也碰到过类似的依赖冲突问题,Ubuntu 17的官方软件源里的Doxygen版本大概率和系统自带的clang(4.0/5.0)不兼容,直接做符号链接因为ABI不匹配根本行不通,给你几个靠谱的解决办法:

方法一:从源码编译适配现有clang版本的Doxygen

这是最稳妥的方案,能让Doxygen直接调用你系统里已有的libclang-5.0:

  • 先安装编译依赖:
    sudo apt update && sudo apt install git cmake libclang-5.0-dev build-essential
    
  • 克隆Doxygen的源码仓库:
    git clone https://github.com/doxygen/doxygen.git
    
  • 进入源码目录,创建编译文件夹并配置cmake:
    cd doxygen
    mkdir build && cd build
    cmake -DCLANG_ROOT=/usr/lib/x86_64-linux-gnu/libclang-5.0.so.1 ..
    
  • 编译并安装:
    make -j$(nproc)  # 用CPU核心数加速编译
    sudo make install
    

编译完成后,运行doxygen --version验证一下,应该就能正常工作了。

方法二:手动安装clang-6.0库

如果不想编译源码,也可以尝试安装clang-6.0的二进制包:

  • 添加llvm官方源(适配Ubuntu 17 zesty版本):
    wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | sudo apt-key add -
    sudo add-apt-repository "deb http://apt.llvm.org/zesty/ llvm-toolchain-zesty-6.0 main"
    
  • 安装clang-6.0库:
    sudo apt update && sudo apt install libclang6.0
    

注意:第三方源可能和系统现有依赖产生冲突,操作前建议备份系统或谨慎验证。

方法三:安装低版本的Doxygen

检查官方源里有没有依赖clang-5.0的Doxygen版本:

  • 查看可用的Doxygen版本列表:
    apt-cache policy doxygen
    
  • 选择一个版本号较低、依赖匹配的版本,指定安装:
    sudo apt install doxygen=<具体版本号>
    

这个方法需要你核对版本依赖信息,可能需要尝试几次,但胜在操作简单。

最后提醒:不要随便给不同大版本的libclang做符号链接,因为不同版本之间的ABI是不兼容的,这样做只会导致更奇怪的运行时错误,一定要用匹配的库或者让Doxygen适配现有库。

内容的提问来源于stack exchange,提问作者arpanmangal

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 08:58:32