LINUX安装32位运行库【LINUX配置YUM源的几种办法】

LINUX安装32位运行库【LINUX配置YUM源的几种办法】

时间 2015-07-07 12:56:00  博客园-原创精华区

原文  http://www.cnblogs.com/Wherebolezi/p/4626670.html

主题 Yum

前言:本帖仅适用于RedHat、CentOS的64位系统

很多时候我们需要用linux运行或测试程序,然而我们发现64位linux系统在检测32位程序的动态链接库文件时(也就是ldd一个so文件)会报错:

不是动态可执行文件【或英文提示: not a dynamic executable file 】

这是因为系统没有安装32位兼容库的缘故,我们分两大方法解决这个问题→ 有网络/ 无网络

一、当前使用linux系统已连接网络情况下,可进行在线安装

yum在线安装: sudo yum install xulrunner.i686

或:

sudo yum install ia32-libs.i686

Ubuntu系统: sudo apt-get install ia32-libs

但是在这里要附带说明一下,RedHat系统默认是需要注册才能使用yum的在线安装功能的,如果没有注册系统会提示:

This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.

如果您不想花钱注册,请参考B计划:【 使用CentOS的网络资源配置yum源 】

备份原repo文件: mv /etc/yum.repos.d/rhel-debuginfo.repo /etc/yum.repos.d/rhel-debuginfo.repo.repo.bak

编辑repo文件: vi /etc/yum.repos.d/rhel-debuginfo.repo

内容为:

[base]

name=CentOS-$releasever - Base

baseurl=http://mirrors.163.com/centos/6.0/os/$basearch/

gpgcheck=1

gpgkey=http://mirrors.163.com/centos/RPM-GPG-KEY-CentOS-6

#released updates

[updates]

name=CentOS-$releasever - Updates

baseurl=http://mirrors.163.com/centos/6.0/updates/$basearch/

gpgcheck=1

gpgkey=http://mirrors.163.com/centos/RPM-GPG-KEY-CentOS-6

#packages used/produced in the build but not released

#[addons] #name=CentOS-$releasever - Addons

#baseurl=http://mirrors.163.com/centos/$releasever/addons/$basearch/

#gpgcheck=1

#gpgkey=http://mirrors.163.com/centos/RPM-GPG-KEY-CentOS-6

#additional packages that may be useful

[extras]

name=CentOS-$releasever - Extras

baseurl=http://mirrors.163.com/centos/6.0/extras/$basearch/

gpgcheck=1

gpgkey=http://mirrors.163.com/centos/RPM-GPG-KEY-CentOS-6

#additional packages that extend functionality of existing packages

[centosplus]

name=CentOS-$releasever - Plus

baseurl=http://mirrors.163.com/centos/6.0/centosplus/$basearch/

gpgcheck=1

enabled=0

编辑完成后使用:yum clean all清理yum包

使用yum install vim或yum install xulrunner.i686 命令安装32位运行库

二、所使用的linux系统为封闭式网路,无法连接外网

这种情况下我们需要有安装光盘,也就是安装当前linux系统所使用的安装光盘,也可以分为两种情况

1): 使用iso镜像文件挂载

1.创建iso存放目录和挂载目录 mkdir /mnt/iso     mkdir /mnt/cdrom

2. 将iso镜像文件复制到/mnt/iso文件夹下

3. 将/mnt/iso/下的iso文件挂载到/mnt/cdrom目录 mount -o loop /mnt/iso/XXXXX.iso /mnt/cdrom  <注:挂载完之后对其操作会提示设备繁忙,此时需要

umount解开挂载才行>     查看是否挂载成功:  df -h <用来查看系统中所有挂载的,mount也可以>

4. cd /etc/yum.repos.d/ ==>  创建自己的.repo文件    touch myself.repo  ==>  vi myself.repo      

[base]      

name=RedHat      

baseurl=file:///mnt/cdrom    #注:这里的baseurl就是你挂载的目录,在这里是/mnt/cdrom      

enabled=1                               

gpgckeck=0      

gpgkey=file:///mnt/cdrom/RPM-GPG-KEY-redhat-release   #注:此参数可以cd /mnt/cdrom/看到,此参数仅供参考

5. 测试:

yum clean all  ==>  yum install vim* 如果无效则使用   yum install xulrunner.i686

2:)使用已挂载的镜像文件配置yum源 【光盘已经挂载在media文件中,显示的是已经解压的iso镜像文件】

1. 挂载光盘 mount /dev/cdrom /media 通常会提示:

mount: block device /dev/sr0 is write-protected, mounting read-only  

意思是当前光盘是以只读方式挂载的,可以忽略,你也可以添加参数挂载 :

mount -ro -loop /dev/cdrom /media       #以只读方式挂载,就不会报错了

2. 建立yum配置文件    vi /etc/yum.repos.d/local.repo    内容如下:

[base]   

name=linux6   

baseurl=file:///media   

gpgcheck=0   

enable=1   

gpgkey=file:///mnt/cdrom/RPM-GPG-KEY-redhat-release   

3. 修改YUM源地址 vi /usr/lib/python2.6/site-packages/yum/yumRepo.py   

在末行模式下(也就是输入状态下按了ESC的状态),输入/remote可以查找remote单词

找到 remote = url +'/' + relative     修改为: remote = '/yum' + relative

4. 测试: yum clean all     安装: yum install vim* 或者使用 yum install xulrunner.i686  

如果系统在安装一大堆的i686包就代表完成了

附录:yum说明[yum常用命令]

Yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及CentOS中的 Shell 前端软件包管理器。基于 RPM 包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。

安装软件(以foo-x.x.x.rpm为例):yum install foo-x.x.x.rpm

删除软件:yum remove foo-x.x.x.rpm或者yum erase foo-x.x.x.rpm

升级软件:yum upgrade foo或者yum update foo

查询信息:yum info foo

搜索软件(以包含foo字段为例):yum search foo

显示软件包依赖关系:yum deplist foo

-e 静默执行 -t 忽略错误 -R[分钟] 设置等待时间 -y 自动应答yes --skip-broken 忽略依赖问题 --nogpgcheck 忽略GPG验证

check-update 检查可更新的包 clearn 清除全部 clean packages 清除临时包文件(/var/cache/yum 下文件)

clearn headers 清除rpm头文件 clean oldheaders 清除旧的rpm头文件 deplist 列出包的依赖 list 可安装和可更新的RPM包

list installed 已安装的包 list extras 已安装且不在资源库的包 info 可安装和可更新的RPM包 信息

info installed 已安装包的信息(-qa 参数相似) install[RPM包] 安装包

localinstall 安装本地的 RPM包 update[RPM包] 更新包 upgrade 升级系统 search[关键词] 搜索包 provides[关键词] 搜索特定包文件名

reinstall[RPM包] 重新安装包 repolist 显示资源库的配置 resolvedep 指定依赖 remove[RPM包] 卸载包

你可能感兴趣的:(嵌入式linux)