找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
广告投放联系QQ68610888
查看: 29599|回复: 13

opkg安装软件包报错求助

[复制链接]
发表于 2021-8-11 14:40 | 显示全部楼层 |阅读模式
我在安装openconnect客户端时,使用如下命令
opkg install luci-proto-openconnect openconnect



发生报错:


Collected errors:
* pkg_hash_check_unresolved: cannot find dependency kernel (= 5.4.138-1-4f48e32cee7fd90c0bd24dca8312f71a) for kmod-tun



我的固件版本内核是5.4.128,而且我看固件也自带了对应5.4.128内核的kmod-tun


不知道为什么会报一个5.4.138的依赖错误?



 楼主| 发表于 2021-8-11 14:53 | 显示全部楼层
root@OpenWrt:/tmp# opkg depends -A kmod-tun
kmod-tun depends on:
        kernel (= 5.4.138-1-4f48e32cee7fd90c0bd24dca8312f71a)
kmod-tun depends on:
        kernel (= 5.4.128-1-cbb8ac4935d598d6698273eeff206105)


有人知道为什么它依赖两个版本内核吗?  我的固件是5.4.128,但是它就报cannot find dependency kernel (= 5.4.138-1-4f48e32cee7fd90c0bd24dca8312f71a) for kmod-tun

点评

替换指纹后解决  详情 回复 发表于 2023-10-6 08:53
回复 支持 反对

使用道具 举报

发表于 2021-8-11 17:29 | 显示全部楼层
kmod是内核模块,99%可能性是指纹变了,就是138-1-4f48e32cee7fd90c0bd24dca8312f71a最后面这一串导致opkg认为依赖不满足
因为坛子里的op源码都是基于master/snapshot开发分支,每天都在刷版本号,只要版本号指纹变了,依赖于版本号的所有包都无法用opkg后装,唯一的方法是编译时直接加进去
非内核模块,某些依赖可以用opkg --force-checksum 跳过指纹检测——你的kmod不用试这个法子,后果难说,最好的结果是仍然失败,最坏的结果可能直接把路由搞崩溃

点评

大佬可以帮我看看5楼的问题吗  详情 回复 发表于 2021-8-12 11:00
回复 支持 反对

使用道具 举报

发表于 2021-8-11 17:47 | 显示全部楼层
是因为你系统是内核128,但是你发行版软件源里面配置的是138的源,第一次安装时它会卸载掉比较旧的128版,安装138,内核不匹配明显安装不了,第二次你去查依赖时肯定是要报本系统的内核版本,接着报软件源里的内核版本,除了LGA1150的做过特殊处理固件(我本人的也参照他的办法做了处理也可以安装),其他人编译的固件全部不能安装kmod。官方的快照固件因为天天在变,不是编译当天也不能安装kmod。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-8-12 10:50 | 显示全部楼层
wulishui 发表于 2021-8-11 17:47
是因为你系统是内核128,但是你发行版软件源里面配置的是138的源,第一次安装时它会卸载掉比较旧的128版, ...

大佬你说的很对,基本就这个意思,我现在刷了个稍微旧版本的固件,没这内核版本问题了,但是openconnect还是有另外的问题,我正在谷歌寻找答案。。。。
root@OpenWrt:~# openconnect
Error relocating /usr/sbin/openconnect: libiconv: symbol not found
Error relocating /usr/sbin/openconnect: libiconv_close: symbol not found
Error relocating /usr/sbin/openconnect: libiconv_open: symbol not found
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-8-12 11:00 | 显示全部楼层
avin4 发表于 2021-8-11 17:29
kmod是内核模块,99%可能性是指纹变了,就是138-1-4f48e32cee7fd90c0bd24dca8312f71a最后面这一串导致opkg ...

大佬可以帮我看看5楼的问题吗
回复 支持 反对

使用道具 举报

发表于 2021-8-12 11:20 | 显示全部楼层
openconnect 这种在介面增加拨号协议的模块,都是和系统内核相关的,最简单的安装方法就是编译时加入
恕我直言,后装不是不可以,但是不是你能用的法子,如果你会也不用在这里问了。
所以如果你确实有需要,下载源码自己编译,亦或者找其他人给你订制固件。
回复 支持 反对

使用道具 举报

发表于 2023-2-11 21:39 | 显示全部楼层
同样的问题,没有解决。。。
回复 支持 反对

使用道具 举报

发表于 2023-10-6 08:53 | 显示全部楼层
since1949 发表于 2021-8-11 14:53
root@OpenWrt:/tmp# opkg depends -A kmod-tun
kmod-tun depends on:
        kernel (= 5.4.138-1-4f48e32 ...

替换指纹后解决

点评

我也遇到了这个情况,也想替换指纹不知道怎么替换  详情 回复 发表于 2023-12-14 23:35
请问是如何替换的呢?  详情 回复 发表于 2023-11-10 02:53
请问怎么替换指纹啊!谢谢  详情 回复 发表于 2023-11-2 11:58
回复 支持 反对

使用道具 举报

发表于 2023-11-2 11:58 | 显示全部楼层
dmgy 发表于 2023-10-6 08:53
替换指纹后解决

请问怎么替换指纹啊!谢谢
回复 支持 反对

使用道具 举报

发表于 2023-11-10 02:53 | 显示全部楼层
dmgy 发表于 2023-10-6 08:53
替换指纹后解决

请问是如何替换的呢?
回复 支持 反对

使用道具 举报

发表于 2023-12-14 23:34 | 显示全部楼层
请问您当时是怎么替换指纹的,是不是搜索到user-lib...下的文件把原来的指纹全部替换掉了
回复 支持 反对

使用道具 举报

发表于 2023-12-14 23:35 | 显示全部楼层
dmgy 发表于 2023-10-6 08:53
替换指纹后解决

我也遇到了这个情况,也想替换指纹不知道怎么替换

点评

我也遇到了,解决了后不知道有没有什么后遗症,最好是备份下原文件 替换指纹,文件在/usr/lib/opkg/status 安装报错软件复制报错代码中kernel (= xxxx-xxxxxxxxxxxx)括号内等于号后面的这一段,打开指纹文件将里面所  详情 回复 发表于 2024-2-22 21:42
回复 支持 反对

使用道具 举报

发表于 2024-2-22 21:42 | 显示全部楼层
本帖最后由 10626879 于 2024-2-22 21:44 编辑
gosiner 发表于 2023-12-14 23:35
我也遇到了这个情况,也想替换指纹不知道怎么替换

我也遇到了,解决了后不知道有没有什么后遗症,最好是备份下原文件
替换指纹,文件在/usr/lib/opkg/status
安装报错软件复制报错代码中kernel (= xxxx-xxxxxxxxxxxx)括号内等于号后面的这一段,打开指纹文件将里面所有原有的xxxx-xxxxxxxx指纹替换成这个,改完保存立即生效
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

欢迎大家光临恩山无线论坛上一条 /1 下一条

有疑问请添加管理员QQ86788181|手机版|小黑屋|Archiver|恩山无线论坛(常州市恩山计算机开发有限公司版权所有) ( 苏ICP备05084872号 )

GMT+8, 2024-6-3 23:46

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

| 江苏省互联网有害信息举报中心 举报信箱:js12377 | @jischina.com.cn 举报电话:025-88802724 本站不良内容举报信箱:68610888@qq.com 举报电话:0519-86695797

快速回复 返回顶部 返回列表