运行qemu出现libnettle.so.6动态链接库错误

最近在研究xv6操作系统,想着先把它跑起来

可通过bochs或者qemu运行,运行方法直接make qemu或者make bochs,但由于各种原因,都没能成功得运行起来

bochs方面由于bochs版本原因,代码下的.bochsrc过于老旧,要改的东西挺多,而且改完之后似乎读取img文件的时候又有新的问题,解决不了后放弃

qemu方面是系统软件存在问题,具体是:运行时报

qemu: error while loading shared libraries: libnettle.so.6: cannot open shared object file: No such file or directory

的错误,看了下/lib文件夹下有libnettle.so libnettle.so.7.0 libnettle.so.7,就直接使用ls -s命令弄了个符号链接指向libnettle.so 运行时又有

qemu: /usr/lib/libnettle.so.6: version `NETTLE_6' not found (required by qemu)

的错误,这下就麻烦了,是动态连接库版本的问题,似乎qemu使用的是NETTLE_6,而我的系统里面是NETTLE_7

 

不得已只能从源码编译一个来使用了,盲猜了一个3.2版本,居然能用了

我的系统环境:Manjaro xfce版本, qemu 3.1.0

解决方案:

1.从https://ftp.gnu.org/gnu/nettle/ 下载3.2版本的源码

2. ./configure && make -j 4

3. cd /lib && ln -s [path to compiled shared lib] libnettle.so.6 (期间遇到一个奇怪的问题,在/lib下创建符号链接能用,在其他目录下创建不能用。。。) (或者直接将编译出来的动态链接库重命名后移动到/lib)

 

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值