在64位Ubuntu 22.04运行32位Ubuntu 18.04编译程序的问题
解决32位程序在64位Ubuntu 22.04中找不到libgtksourceview-2.0.so.0的问题
核心原因
你安装的是x86_64架构的libgtksourceview库,而32位程序只能加载i386架构的对应库,动态链接器无法跨架构匹配文件,因此报错。
解决方案
安装32位版本的libgtksourceview-2.0库
执行以下命令安装i386架构的目标库,它会自动拉取所有依赖的32位GTK相关组件:sudo apt-get install libgtksourceview2.0-0:i386刷新动态链接库缓存
安装完成后,更新系统的库索引,让动态链接器识别新安装的32位库:sudo ldconfig验证修复效果
重新检查程序的库依赖状态:ldd application | grep libgtksourceview如果输出显示库已找到(例如
libgtksourceview-2.0.so.0 => /lib/i386-linux-gnu/libgtksourceview-2.0.so.0),即可正常启动程序。
重新编译的额外处理(可选)
如果需要在64位系统上重新编译32位程序,需安装对应架构的开发库:
sudo apt-get install libgtksourceview2.0-dev:i386 libgtk2.0-dev:i386
编译时务必保留-m32参数,确保GCC生成32位可执行文件。
内容的提问来源于stack exchange,提问作者Denis Vidale
相关产品推荐
相关产品推荐

