Gentoo下折腾emerge包管理器
来源:互联网 发布:网络公会白马义从 编辑:程序博客网 时间:2024/06/05 04:16
gentoo:emerge如何使用USE安装额外的包扩展,vim如何安装lua支持?
使用过的包管理器
ubuntu的apt-get,arch的pacman,继承自redhat的yum
通过配置源都可以从国内外镜像上获得软件包,并且交给这些包管理器来处理依赖,下载依赖等等
在使用mac os x那段时间,我一般是用brew和apple store来管理包和程序的
后来有段时间我使用windows,坚持使用360,虽然大家都说他流氓,但是十多年的感情了!从奇虎到现在,我发现他的“包管理器”:软件管家,还是不错的(滑稽)!
反正我已经习惯了使用在线包管理器的方式,节省大量的时间去写自己的程序
安装完gentoo之后也迅速开始学习它的包管理器:emerge!
emerge的包管理系统portage
Gentoo 的包管理工具称为portage(类似于 yum 和 apt). 而 emerge (类似于Debian的apt-get,Redhat 的yum 和 Suse的zypper命令)是作为portage的前端使用 portage 的命令。
portage下的“小数据库”
/usr/portage下是Portage树是ebuilds文件的集合,这些文件包含了Portage管理工具维护软件(安装,搜索,查询,编译 …)时所需要的所有信息,当运行emerge命令时参考此数据库
在/usr/portage中我们看到所有emerge可用与管理的包,cd进去还能看到里面的包
使用emerge安装软件的时候:
emerge app-editors/vim
emerge后面紧跟的第一层也就是这个目录中第一层可用包,第二层对应了包下一层软件包
emerge的USE
make.conf
cd /etc/portagecat ./make.conf
此文件记录了编译时用到的参数,CFLAGS,CXXFLAGS,MAKEOPTS等参数,一般不需要修改。
但有一个USE的变量很常用
USE
一个软件不止是程序,还有文档,插件扩展,UI支持等等,而use就是可以添加删除这些额外福利的变量。
两种方式使用USE:
1. 可以直接修改make.conf里的USE变量。
2. emerge命令前使用,相当于临时变量(推荐)
例:
vim需要使用neocomplete插件,就要lua支持,此时我们如果手动编译vim需要加上–with-lua。
重新来安装vim,emerge使用USE添加一些支持,lua,ruby等
查看可用USE可用扩展包
emerge -pv app-editors/vim
可以看到USE:
红色表示会安装的,蓝色并带有“-”号表示不会安装的,
安装vim,添加lua,ruby,cscope,python,perl常用支持:
USE="cscope lua ruby python perl" emerge --ask app-editors/vim
看到刚刚蓝色的使用USE已经添加进去并变成红色了,表示会被一起安装进去
而且,留意多出一个依赖包cscope需要下载下来,而他的USE=”-emacs”,表示去掉对emacs的支持,那是留给emacs党用的,vim党不需要(滑稽
这样vim能使用neocomplete了!
其他的emerge命令
卸载软件
emerge -C vim
移除不影响系统功能的软件(清理系统)
emerge --cleanemerge -c
卸载可以移除的依赖(深度清理)
emerge --depclean
安装特定版本的软件
emerge "=python-3.2"emerge "<python-3.2"
升级软件
emerge -u operaemerge --update opera
升级系统软件
emerge -u system
升级整个系统
emerge -u world
world 来自 /var/lib/portage/world
当然,可以加个 p (再加个v就完美了),看看看是不是自己想要的:
emerge -pvu world
避免升级覆盖掉版本更高的软件
emerge -uU worldemerge --update --upgradeonly world
安装了masked 软件包,升级时可能会降级处理的
查看某软件包可用的USE参数
emerge -pv php
这个就非常有用了
临时设置USE 并以临时的USE 变量emerge 软件包
USE="-minimal" emerge -1 xinit
注意:添加不需要“+”号
如果想以某种规则(USE)永久性的安装某软件包,那么在 /etc/portage/package.use 文件里添加如下一行内容:
echo x11-apps/xinit -minimal >> /etc/portage/package.use
添加后,就会 以 USE=”-minimal” 安装 xinit 了, 而且是永久性的(除非删掉此行)
不存在 /etc/portage/ 目录的话,手动创建
- Gentoo下折腾emerge包管理器
- Gentoo下emerge用法
- Gentoo 中包管理工具 emerge、eix、equery的基本用法
- Gentoo emerge 参数说明
- gentoo emerge安装
- gentoo emerge tools
- gentoo emerge使用
- gentoo安装blender,emerge出错
- Gentoo Linux Emerge Shell Hack
- Gentoo emerge 命令用法总结
- 解决Gentoo emerge block error
- Gentoo emerge USE 安装postgresql
- gentoo hardened emerge报 setexec(con)错误
- Gentoo emerge 安装 apache php postgresql
- Gentoo的emerge命令参数用法详解
- 被Gentoo折腾
- Gentoo下portage包的管理
- gentoo下如何恢复包的信息
- 【SSMS】springmvc+spring+mybatis+maven项目集成shiro进行用户权限控制
- 设计模式
- ArrayList
- 1509: [NOI2003]逃学的小孩
- unity反馈消息到ios Unity与ios交互
- Gentoo下折腾emerge包管理器
- 【LeetCode】Detect Capital 解题报告
- Spring AOP 必导jar包
- laravel5.2 验证码
- 大小端问题
- Unity与ios交互
- Calendar日历+Date时间+SimpleDateFormat转换格式
- Xmind之鱼骨图绘制方法
- getopt解析函数