栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

linux64位系统兼容32位程序(不下载兼容包)

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

linux64位系统兼容32位程序(不下载兼容包)

64位系统兼容32位系统,正常通过apt指令安装兼容包即可。也就是两条命令的事情:

apt-get install gcc-multilib

apt-get install g++-multilib

安装完后,32位的程序就可以在硬件上跑了。但是现场已经在使用的硬件产品,因为硬件网络是定向网络(IOT定向卡,限定了访问的IP地址,目前无法访问163和交大的源),所以这些设备上无法执行apt指令。

当然,可以在公司将需要的deb下载下来,然后升级的时候,目标设备下载下来后,dpkg -i来安装这些包。但是,这两个包,依赖的包非常多,搞起来也不是那么容易的。

剩下还有一种办法,就是取一个设备做测试验证,在这个机器上先安装好环境,然后将安装好的包,直接压缩,然后以升级的方式拷贝到目标机器上,不就可以了吗?

按照这个思路,以x86的硬件为例,安装了兼容包后,机器上会多出来:

1. /lib/i386-linux-gnu

整体打包后,到目标机器上, /lib文件夹下解压缩即可

2. /usr/lib32

整体打包,到目标机器上,/usr目录下,解压缩

3. /lib32

这个是指向/usr/lib32的链接文件夹,所以在/下建立用ln -s建立链接文件夹即可

4. 调试指令ldd

ldd经常用到,如果只做上面1~3步操作,ldd 检查32位程序,还是不行。需要到/lib目录下,建立快捷文件ld-linux.so.2,如下所示: 

5. 库的加载路径

库的加载路径,由/etc/ld.so.conf.d下的文件夹决定。安装完兼容包的硬件中,会多出i386-linux-gnu.conf,zz_i386-biarch-compat.conf和zz_x32-biarch-compat.conf,这3个文件。把这3个文件拷贝到目标机。如果要不重启验证,那么执行ldconfig。如果重启,那自动就好用了。

做完上述5个步骤后,我的目标机器,就能跑32位的程序了

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/827023.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号