|

楼主 |
发表于 2008-5-1 08:06:28
|
显示全部楼层
Post by d00m3d;1844524
实不相瞒,在下用过 Gentoo 一段短时间,大概是 1.4 到 2004.3 之间,对 Gentoo 也有点基本认识
我觉得 Portage 的不断更新,其软件包的依赖关系始终会延伸到系统的核心里,因此,尽管现在不执行 emerge -e system 或者 emerge world 等命令,日後基於包之间的相互依赖,系统还是会被取缔,结果由 LFS 变成 Gentoo,这不过是迟早的问题而矣
记得以前 VirusCamp 兄弟就在 LFS 装过 portage,而他的系统也真的变成了 Gentoo
因此,我认为 LFS 系统引入别的发行版的包管理系统本身无可厚非,(呵呵,我自己也在 LFS 下加入了 Debian 的 dpkg 支持),可是也只能仅让它以手工型式来实行,让自己掌管它的动作,不能让它自动化,否则系统脱变只是时间迟早的问题而矣
期待楼主的意见。 老實說,我也沒太大把握它不會變成Gentoo。
不過拿portage來調查一下相依,搜尋套件,可以省去不少google的時間。
例如:搜尋zlib,下# emerge -s zlib,我們可以找到8個含zlib關鍵字的套件,
假設我要的是sys-libs/zlib,這表示在/usr/portage/sys-libs/zlib下有個ebuild文件- # cd /usr/portage/sys-libs/zlib/
- # ls
- # less zlib-1.2.3-r1.ebuild
复制代码 內容如下:(節錄)- # Copyright 1999-2007 Gentoo Foundation
- # Distributed under the terms of the GNU General Public License v2
- # $Header: /var/cvsroot/gentoo-x86/sys-libs/zlib/zlib-1.2.3-r1.ebuild,v 1.12 2007/05/14 23:51:14 vapier Exp $
- inherit eutils flag-o-matic toolchain-funcs
- DESCRIPTION="Standard (de)compression library"
- HOMEPAGE="http://www.zlib.net/"
- SRC_URI="http://www.gzip.org/zlib/${P}.tar.bz2
- http://www.zlib.net/${P}.tar.bz2"
- LICENSE="ZLIB"
- SLOT="0"
- KEYWORDS="alpha amd64 arm hppa ia64 m68k mips ppc ppc64 s390 sh sparc ~sparc-fbsd x86 ~x86-fbsd"
- IUSE=""
- RDEPEND=""
- src_unpack() {
- unpack ${A}
- cd "${S}"
- epatch "${FILESDIR}"/${P}-visibility-support.patch #149929
- # Make sure we link with glibc at all times
- epatch "${FILESDIR}"/${PN}-1.2.1-glibc.patch
- # Needed for Alpha and prelink
- epatch "${FILESDIR}"/${PN}-1.2.1-build-fPIC.patch
- epatch "${FILESDIR}"/${PN}-1.2.1-configure.patch #55434
- # fix shared library test on -fPIC dependant archs
- epatch "${FILESDIR}"/${PN}-1.2.1-fPIC.patch
- epatch "${FILESDIR}"/${PN}-1.2.3-r1-bsd-soname.patch #123571
- epatch "${FILESDIR}"/${PN}-1.2.3-LDFLAGS.patch #126718
- sed -i -e '/ldconfig/d' Makefile.in
- }
- ......
复制代码 這三行代表描述,官網網址,下載處- DESCRIPTION="Standard (de)compression library"
- HOMEPAGE="http://www.zlib.net/"
- SRC_URI="http://www.gzip.org/zlib/${P}.tar.bz2
- http://www.zlib.net/${P}.tar.bz2"
复制代码 這一行是適用機器,加上"~"代表測試- KEYWORDS="alpha amd64 arm hppa ia64 m68k mips ppc ppc64 s390 sh sparc ~sparc-fbsd x86 ~x86-fbsd"
复制代码 以下代表沒延伸功能與沒有其他相依套件這一段代表它要打的patch- epatch "${FILESDIR}"/${P}-visibility-support.patch #149929
- # Make sure we link with glibc at all times
- epatch "${FILESDIR}"/${PN}-1.2.1-glibc.patch
- # Needed for Alpha and prelink
- epatch "${FILESDIR}"/${PN}-1.2.1-build-fPIC.patch
- epatch "${FILESDIR}"/${PN}-1.2.1-configure.patch #55434
- # fix shared library test on -fPIC dependant archs
- epatch "${FILESDIR}"/${PN}-1.2.1-fPIC.patch
- epatch "${FILESDIR}"/${PN}-1.2.3-r1-bsd-soname.patch #123571
- epatch "${FILESDIR}"/${PN}-1.2.3-LDFLAGS.patch #126718
- sed -i -e '/ldconfig/d' Makefile.in
复制代码 如果用來查詢,我覺得很方便。
像這個軟件沒有相依我覺得可以直接做emerge,不過要自己動手操作也行。
如果不想看ebuild也可以,只要下指令也可以得到相同的資訊。
記得要常常emerge --sync更新套件資訊,這個動作只會用來更新portage tree而不會去更動到系統。
我想,光用來查詢應該不會把系統換成Gentoo吧!
其實,我就是看到d00m3d兄的大作[毁灭系列] <<为 LFS 加入 Debian 支持 (第一部 dpkg)>>
才興起為LFS加上portage的念頭。其中,d00m3d兄也提出別太常使用apt,很可能會把LFS變成Debian,
這個小弟銘記在心,我只是單純apt用不習慣,想改用portage,運氣好才安裝成功的 。
感謝你的回應 |
|