QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 3002|回复: 13

正在尝试制作一个gcc4.2.4+glibc2.7+binutils的基本chroot环境,不过有几个问题

[复制链接]
发表于 2008-9-1 14:35:35 | 显示全部楼层 |阅读模式
1、怎么加快编译速度……
2、求一个优化后的 macros ,ML 的 macros 貌似优化设置全没了。
3、最基本软件环境的依赖关系树……现在 srpm 里面的依赖关系是转圈的。我已经用 --nodeps 开始编译了,不过 gcc glibc bintuils 都很大,spec 里面的设置经常导致编译很长时间后失败……
发表于 2008-9-1 16:14:23 | 显示全部楼层
依赖关系转圈是必然的,只能先一个一个的编译出来,然后再重新编译。

macros的位置不一样了,你自己改下/usr/lib/rpm里的吧。

编译速度除了用-j参数,其它没什么办法。
回复

使用道具 举报

 楼主| 发表于 2008-9-1 18:14:52 | 显示全部楼层
ML 统一的优化参数是啥?
回复

使用道具 举报

 楼主| 发表于 2008-9-2 17:35:10 | 显示全部楼层
我快疯了,依赖完全满足,但就是编译失败。
要么就是因为有没打进包里面的文件而失败……

计划暂停,等 ML 把包全都更新一遍再说……
回复

使用道具 举报

 楼主| 发表于 2008-9-2 17:36:19 | 显示全部楼层
我现在特奇怪为什么会这样
回复

使用道具 举报

 楼主| 发表于 2008-9-2 20:28:18 | 显示全部楼层

把基础包用最简单的 spec 制作单一包!
回复

使用道具 举报

 楼主| 发表于 2008-9-3 15:32:31 | 显示全部楼层
一个可以 chroot 进去的 rpm 列表,安装到特定的目,chroot 过去应该可以作为基础编译环境。
需要软件可以继续安装过去。但最好能先进行一次升级 & 编译。
2。1 rc1 和 2。5 的混合。

basesystem-8.0-5mgc.noarch.rpm
bash-3.2-2mgc.i686.rpm
binutils-2.18.50.0.6-3mgc.i686.rpm
binutils-devel-2.18.50.0.6-3mgc.i686.rpm
coreutils-5.97-2mgc.i686.rpm
cpp-4.2.4-2mgc.i686.rpm
cracklib-2.8.12-2.i686.rpm
cracklib-devel-2.8.12-2.i686.rpm
cracklib-dicts-2.8.12-2.i686.rpm
db4-4.7.25-1mgc.i686.rpm
db4-cxx-4.7.25-1mgc.i686.rpm
db4-devel-4.7.25-1mgc.i686.rpm
filesystem-2.3.5-4mgc.i686.rpm
findutils-4.2.29-3mgc.i686.rpm
gcc-4.2.4-2mgc.i686.rpm
gcc-c++-4.2.4-2mgc.i686.rpm
gcc-gfortran-4.2.4-2mgc.i686.rpm
gcc-gnat-4.2.4-2mgc.i686.rpm
gcc-objc-4.2.4-2mgc.i686.rpm
gcc-objc++-4.2.4-2mgc.i686.rpm
gdbm-1.8.0-26mgc.i686.rpm
gdbm-devel-1.8.0-26mgc.i686.rpm
glibc-2.7-2mgc.i686.rpm
glibc-common-2.7-2mgc.i686.rpm
glibc-devel-2.7-2mgc.i686.rpm
glibc-headers-2.7-2mgc.i686.rpm
gmp-4.2.2-7.i686.rpm
gmp-devel-4.2.2-7.i686.rpm
grep-2.5.1-43mgc.i686.rpm
info-4.8-2mgc.i686.rpm
kernel-headers-2.6.25.6-1mgc.i686.rpm
libacl-2.2.39-3mgc.i686.rpm
libacl-devel-2.2.39-3mgc.i686.rpm
libattr-2.4.32-1mgc.i686.rpm
libattr-devel-2.4.32-1mgc.i686.rpm
libgcc-4.2.4-2mgc.i686.rpm
libgfortran-4.2.4-2mgc.i686.rpm
libgnat-4.2.4-2mgc.i686.rpm
libgomp-4.2.4-2mgc.i686.rpm
libobjc-4.2.4-2mgc.i686.rpm
libstdc++-4.2.4-2mgc.i686.rpm
libstdc++-devel-4.2.4-2mgc.i686.rpm
libtermcap-2.0.8-47mgc.i686.rpm
libtermcap-devel-2.0.8-47mgc.i686.rpm
mktemp-1.5-24mgc.i686.rpm
mpfr-2.3.0-3.i686.rpm
mpfr-devel-2.3.0-3.i686.rpm
ncurses-5.6-1mgc.i686.rpm
ncurses-devel-5.6-1mgc.i686.rpm
pam-1.0.1-5.i686.rpm
pam-devel-1.0.1-5.i686.rpm
pcre-6.7-1mgc.i686.rpm
pcre-devel-6.7-1mgc.i686.rpm
perl-5.10.0-1mgc.i686.rpm
perl-devel-5.10.0-1mgc.i686.rpm
perl-ExtUtils-MakeMaker-6.36-1mgc.i686.rpm
perl-ExtUtils-ParseXS-2.18-1mgc.i686.rpm
perl-libs-5.10.0-1mgc.i686.rpm
perl-Module-Pluggable-3.60-1mgc.i686.rpm
perl-Pod-Escapes-1.04-1mgc.i686.rpm
perl-Pod-Simple-3.05-1mgc.i686.rpm
perl-Test-Harness-2.64-1mgc.i686.rpm
perl-version-0.74-1mgc.i686.rpm
setup-2.5.33-16mgc.noarch.rpm
termcap-5.5-2mgc.noarch.rpm
tzdata-2006p-1mgc.noarch.rpm
zlib-1.2.3-4mgc.i686.rpm
zlib-devel-1.2.3-4mgc.i686.rpm
回复

使用道具 举报

 楼主| 发表于 2008-9-3 20:29:38 | 显示全部楼层
就差一个 tk 没有依赖进来,因为它还要依赖 X11 。
这样这个环境 450M 左右,有 RPM 支持的。

tzdata-2006p-1mgc
termcap-5.5-2mgc
glibc-2.7-2mgc
gmp-4.2.2-7
db4-4.7.25-1mgc
libtermcap-2.0.8-47mgc
ncurses-5.6-1mgc
info-4.8-2mgc
setup-2.5.33-16mgc
basesystem-8.0-5mgc
libgomp-4.2.4-2mgc
glibc-devel-2.7-2mgc
db4-cxx-4.7.25-1mgc
gcc-c++-4.2.4-2mgc
libgnat-4.2.4-2mgc
gcc-objc-4.2.4-2mgc
gcc-objc++-4.2.4-2mgc
gcc-gfortran-4.2.4-2mgc
binutils-devel-2.18.50.0.6-3mgc
gmp-devel-4.2.2-7
mpfr-devel-2.3.0-3
perl-version-0.74-1mgc
perl-5.10.0-1mgc
perl-Pod-Simple-3.05-1mgc
ncurses-devel-5.6-1mgc
perl-devel-5.10.0-1mgc
perl-Test-Harness-2.64-1mgc
pcre-6.7-1mgc
libacl-2.2.39-3mgc
grep-2.5.1-43mgc
findutils-4.2.29-3mgc
pam-1.0.1-5
libacl-devel-2.2.39-3mgc
pcre-devel-6.7-1mgc
beecrypt-4.1.2-2mgc
bzip2-1.0.3-2mgc
bzip2-libs-1.0.3-2mgc
e2fsprogs-1.39-2mgc
e2fsprogs-libs-1.39-2mgc
elfutils-devel-0.124-1mgc
elfutils-libelf-devel-0.124-1mgc
expat-1.95.8-9mgc
file-4.23-1mgc
krb5-devel-1.5-2mgc
krb5-server-1.5-2mgc
neon-0.25.5-2mgc
openssl-0.9.8e-2mgc
openssl-perl-0.9.8e-2mgc
popt-1.10.2-4mgc
python-devel-2.4.4-4mgc
readline-devel-5.2-1mgc
rpm-build-4.4.2-4mgc
rpm-libs-4.4.2-4mgc
shadow-utils-4.0.18.1-2mgc
sqlite-devel-3.5.9-1mgc
tcl-devel-8.4.13-4mgc
libgcc-4.2.4-2mgc
glibc-common-2.7-2mgc
kernel-headers-2.6.25.6-1mgc
libstdc++-4.2.4-2mgc
mpfr-2.3.0-3
gdbm-1.8.0-26mgc
bash-3.2-2mgc
zlib-1.2.3-4mgc
binutils-2.18.50.0.6-3mgc
filesystem-2.3.5-4mgc
cpp-4.2.4-2mgc
glibc-headers-2.7-2mgc
gcc-4.2.4-2mgc
libstdc++-devel-4.2.4-2mgc
libgfortran-4.2.4-2mgc
libobjc-4.2.4-2mgc
mktemp-1.5-24mgc
gcc-gnat-4.2.4-2mgc
db4-devel-4.7.25-1mgc
gdbm-devel-1.8.0-26mgc
libtermcap-devel-2.0.8-47mgc
zlib-devel-1.2.3-4mgc
perl-Module-Pluggable-3.60-1mgc
perl-Pod-Escapes-1.04-1mgc
perl-libs-5.10.0-1mgc
perl-ExtUtils-ParseXS-2.18-1mgc
perl-ExtUtils-MakeMaker-6.36-1mgc
cracklib-2.8.12-2
libattr-2.4.32-1mgc
libattr-devel-2.4.32-1mgc
cracklib-dicts-2.8.12-2
coreutils-5.97-2mgc
cracklib-devel-2.8.12-2
pam-devel-1.0.1-5
chkconfig-1.3.34-1mgc
beecrypt-devel-4.1.2-2mgc
bzip2-devel-1.0.3-2mgc
device-mapper-1.02.22-1mgc
e2fsprogs-devel-1.39-2mgc
elfutils-0.124-1mgc
elfutils-libelf-0.124-1mgc
elfutils-libs-0.124-1mgc
expat-devel-1.95.8-9mgc
file-devel-4.23-1mgc
krb5-libs-1.5-2mgc
krb5-workstation-1.5-2mgc
neon-devel-0.25.5-2mgc
openssl-devel-0.9.8e-2mgc
patch-2.5.4-21mgc
python-2.4.4-4mgc
readline-5.2-1mgc
rpm-4.4.2-4mgc
rpm-devel-4.4.2-4mgc
rpm-python-4.4.2-4mgc
sqlite-3.5.9-1mgc
tcl-8.4.13-4mgc
回复

使用道具 举报

发表于 2008-9-7 22:46:59 | 显示全部楼层
python旧了
回复

使用道具 举报

 楼主| 发表于 2008-9-7 22:55:32 | 显示全部楼层
旧了不是问题,问题是甭管新旧,我都没办法成功编译 ML 的 src.rpm 。
盘算用 gentoo 做一个编译环境之后逐个替换为 rpm 的系统。
这个 LFS 就是提供一个启动环境,可以把所有的基础 rpm 都编译出来后继续编译其他 rpm 而实现全部包编译。
这样如果可以实现, ML 的大版本升级就会方便很多。
回复

使用道具 举报

发表于 2008-9-8 09:02:45 | 显示全部楼层
ml的src.rpm不能编译主要是rpm的配置问题,改改就行了。
回复

使用道具 举报

 楼主| 发表于 2008-9-8 09:40:57 | 显示全部楼层
不光是配置的问题,依赖也很乱,很多没写入的依赖最麻烦。
不过最麻烦的是连程序的 ./configure 都没显示出来的依赖。
以及 ./configure 死活不认已经安装好的程序。
回复

使用道具 举报

发表于 2008-9-8 12:17:48 | 显示全部楼层
原帖由 jiangtao9999 于 2008-9-8 09:40 发表
不光是配置的问题,依赖也很乱,很多没写入的依赖最麻烦。
不过最麻烦的是连程序的 ./configure 都没显示出来的依赖。
以及 ./configure 死活不认已经安装好的程序。

其实从我打好的包+2.1开始是最容易的。
回复

使用道具 举报

 楼主| 发表于 2008-9-8 12:35:57 | 显示全部楼层

那就引入了无数的依赖 2.1 。
而且还是循环绕圈的依赖……
回复

使用道具 举报

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

本版积分规则

GMT+8, 2024-4-17 03:43 , Processed in 0.085139 second(s), 15 queries .

© 2021 Powered by Discuz! X3.5.

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