QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 2650|回复: 6

有关这几天编译升级系统需要的软件包的感受。

[复制链接]
发表于 2008-9-9 23:23:07 | 显示全部楼层 |阅读模式
1、依赖太晕了
一个依赖又一个依赖,我觉得能不能弄个程序整理一下软件包的依赖顺序。(apt 系统应该就行吧?)这样重新编译系统时可以针对性的进行顺序编译安装。
这样也可以清楚的分出各个系统部分组成的软件包。方便未来定制。

2、还是依赖
编译软件就需要无数的依赖,其实仅仅是软件包的附属功能。我觉得对于这种附属功能,能不能把 spec 写为自动识别?如果需要的包没有装,而且不影响主要的功能,就自动屏蔽这个分属的功能。以后系统有了需要的包再编译时,再生成这部分依赖。

3、需要清理出一个最小化基础环境的软件包列表
这样可以方便 2.1 之后 的 2.5 和 3.0 的开始环境,这个最小化的环境还有一个要求就是要能自己完全重新编译而不需要再安装其他的包。不然就没完没了了。
毕竟 ML 不像 Gentoo 那样 portage 可以进行顺序全自动安装。还可以全自动的识别系统环境开关不同的功能。
之后用这个最小化的基础环境继续剩下部分的软件包编译,同样后面可以分成部分的软件包也要能实现不依赖外围新的软件包进行再编译。

工程很大。不知道能不能实现?
最好是能找到取巧的办法。
我甚至考虑用 gentoo 搭建一个和 ML 的软件版本环境一样的系统,之后开始重新编译 ML 来实现 2.5 和 3.0 的编译。

另外,rpm 包管理系统的功能,我们用上了多少?里面会不会有一些能解决上面问题的功能?
发表于 2008-9-10 08:32:18 | 显示全部楼层
1.不太清楚,应该有办法。
2.spec写的好的话,完全可以,其实spec和gentoo的ebuild的功能差不多。
3.我给龙芯移植magic,所以大概还是知道的,基本上就是lfs+rpm,但是这个最小化环境只能做开始,开始后基本都得重新编译,比如rpm,如果有了python,就应该在python上重新编译。

rpm包管理系统的功能基本和其它发行版的功能一样,其它发行版本可以实现的,rpm一般都没有问题,只是一般我们不用就是了。
回复

使用道具 举报

发表于 2008-9-10 09:15:17 | 显示全部楼层
原帖由 sejishikong 于 2008-9-10 08:32 发表
1.不太清楚,应该有办法。
2.spec写的好的话,完全可以,其实spec和gentoo的ebuild的功能差不多。
3.我给龙芯移植magic,所以大概还是知道的,基本上就是lfs+rpm,但是这个最小化环境只能做开始,开始后基本都 ...

都开始移植到龙芯上了!!
回复

使用道具 举报

发表于 2008-9-10 09:26:07 | 显示全部楼层
原帖由 hillwood 于 2008-9-10 09:15 发表

都开始移植到龙芯上了!!

卡到x的驱动上了,其它东西都已经移植完了。
回复

使用道具 举报

 楼主| 发表于 2008-9-10 16:00:41 | 显示全部楼层
现在我 LFS + RPM 根本没办法编译出 ML 的基础环境。总是不停的互相依赖。
这种依赖来依赖去,依赖到根本不知道到了哪里。

gentoo 的 portage 的优势在于它的 ebuild 整个就是一个 shell 脚本,而不像 spec ,语法限制的很死。
回复

使用道具 举报

发表于 2008-9-16 10:52:27 | 显示全部楼层
原帖由 jiangtao9999 于 2008-9-10 16:00 发表
现在我 LFS + RPM 根本没办法编译出 ML 的基础环境。总是不停的互相依赖。
这种依赖来依赖去,依赖到根本不知道到了哪里。

gentoo 的 portage 的优势在于它的 ebuild 整个就是一个 shell 脚本,而不像 spec ...

spec里也可以用脚本啊。
回复

使用道具 举报

 楼主| 发表于 2008-9-16 14:16:33 | 显示全部楼层
ebuild 是完全脚本。
spec 只有编译安装部分可以用脚本,别的地方只能用他自己的语法。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-3-29 20:48 , Processed in 0.064756 second(s), 15 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表