virt-viewer移植

在移植virt-viewer过程中遇到了编译错误,由于binutils版本导致DSO缺失,需要显式链接动态库。此外,通过SSH进行X11转发时需要配置服务器和客户端的ssh配置文件。在启动virt-viewer时遇到警告,可能是vnc-gtk版本过低的bug,但在更高版本中可能已修复。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

移植virt-viewer遇到的问题
gtk-vnc下载地址:
https://download.gnome.org/sources/gtk-vnc/
gtk+ 下载地址:
http://ftp.gnome.org/mirror/gnome.org/sources/gtk+/
spice-gtk下载地址:
https://www.spice-space.org/download/gtk/

编译过程中报错:
error adding symbols: DSO missing from command line
https://segmentfault.com/a/1190000002462705?utm_source=tag-newest
原因是编译时需要显式地链接动态库
场景是:
1、我们有一个shared libA中,定义了函数foo()
2、另一个静态库libB显示地链接了libA
3、一个可执行文件bin_c显示地链接了libA
那么问题来了,如果bin_c中调用了函数foo(),那么编译能不能通过?
在binutils<2.22时,ld正常完成了,bin_c对于foo的调用经由libB,传递到了libA,链接成功。
但是当binutils>=2.22时,编译出错了,ld会报上面的错,告诉你foo这个symbol解析不到,这时,我们需要编译bin_c时,显示地链接libA才

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值