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

本地编译安装libimobiledevice-glue等库后apt-get无法识别的求助

解决手动编译安装库后apt无法识别及deb包依赖错误问题

问题本质

make install会把库文件安装到系统本地路径(如/usr/local),但apt仅管理自身仓库中的包,不会识别手动编译安装的文件。因此你安装deb包时,apt仍会从官方仓库查找依赖,导致两个问题:

  1. 找不到版本匹配的libimobiledevice-glue-1.0-0运行库
  2. 仓库中libplist-dev版本(2.2.0-6)低于deb包要求的2.3.0+

解决方案

方法一:用checkinstall生成deb包让apt管理(推荐)

通过checkinstall将手动编译的库转为deb包安装,这样apt就能识别这些依赖:

  • 先安装checkinstall工具:
    sudo apt-get install checkinstall
    
  • 处理libplist:
    1. 进入libplist源码编译完成的目录
    2. 执行以下命令生成deb包(按提示完成配置,默认选项即可):
      sudo checkinstall
      
    3. 安装生成的libplist相关deb包(包括运行库和dev包):
      sudo dpkg -i libplist*.deb
      
  • 用同样的方法处理libimobiledevice-glue,生成并安装对应的deb包
  • 最后安装你下载的deb包,此时apt会识别到依赖已满足:
    sudo apt-get install ./libimobiledevice-glue-dev_1.1.0-1~exp1_amd64.deb
    

方法二:强制安装deb包(不推荐,可能导致依赖混乱)

如果只是临时使用,可以忽略依赖强制安装:

sudo dpkg --force-depends -i ./libimobiledevice-glue-dev_1.1.0-1~exp1_amd64.deb

之后尝试修复依赖(注意:此步骤可能会卸载刚安装的包,需谨慎):

sudo apt-get install -f

方法三:手动升级libplist并更新库缓存

先升级libplist到满足版本要求的版本,再尝试安装deb包:

  1. 下载libplist 2.3.0及以上版本的源码,编译安装:
    ./configure && make && sudo make install
    
  2. 更新系统库缓存:
    sudo ldconfig
    
  3. 此时直接安装deb包仍可能因apt不识别手动库而报错,建议搭配方法一的checkinstall生成deb包来解决依赖识别问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.28 21:03:42