自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(65)
  • 收藏
  • 关注

原创 手斧Linux – 从LFS到Funtoo (100)

109. ebuild /usr/portage/dev-lang/python/python-3.2.3-r1000.ebuild clean install qmerge指定python的版本号:eselect python set python3.2110. ebuild /usr/portage/sys-apps/file/file-5.11.ebuild clean 

2015-06-27 05:29:06 572

原创 手斧Linux – 从LFS到Funtoo (99)

1. ebuild /usr/portage/app-misc/pax-utils/pax-utils-0.5.ebuild clean install qmerge2. ebuild /usr/portage/app-misc/mime-types/mime-types-9.ebuild clean install qmerge3. ebuild /usr/portage/app-mis

2015-06-27 05:18:40 374

原创 手斧Linux – 从LFS到Funtoo (98)

cd /var/tmp/portage/sys-devel/gettext-0.18.1.1-r3/work/gettext-0.18.1.1rm config.cacheCFLAGS="-mtune=generic -O2 -pipe" LDFLAGS="-Wl,-O1 -Wl,--sort-common -Wl,--as-needed" CXXFLAGS="-mtune=gener

2015-06-27 05:17:43 351

原创 手斧Linux – 从LFS到Funtoo (97)

第3节 安装第一批软件包接下来,可以用ebuild...qmerge来安装软件包了,portage系统将完成源码包的定位、下载、解开、编译、安装、管理等工作。1. ebuild /usr/portage/sys-devel/gnuconfig/gnuconfig-20121010.ebuild clean install  qmerge2. ebuild /usr/portage/

2015-06-27 05:16:34 395

原创 手斧Linux – 从LFS到Funtoo (96)

第9章 用portage完成对包的安装和管理第1节 安装eselect eselect-python安装eselect。ebuild /usr/portage/app-admin/eselect/eselect-1.3.1.1_rc3.ebuild installcp -r /var/tmp/portage/app-admin/eselect-1.3.1.1_rc3/image/*

2015-06-27 05:15:38 345

原创 手斧Linux – 从LFS到Funtoo (95)

第7节 装入己有的源码包将己下载的源码包从拷贝过来。如果不拷贝这些文件,后继的安装命令会自动从网络上下载。如果需要从网络上下载代码,而要将宿主系统连到互联网上。命令如下:mv -v /distfiles /usr/portage/ls /usr/portage/distfiles第8节 小结接下来,我们可以用portage提供的ebuild来安装管理更多的软件包

2015-06-27 05:13:58 338

原创 手斧Linux – 从LFS到Funtoo (94)

@$(AWK) 'BEGIN { ini=1 } \                 /^[ \t]*$$/ { next } \                 /^[ \t]*#/ { next } \                 /^[^#]/ { if (sub(/[ \t]*\\$$/, " ") == 0) end="\n"; \                  

2015-06-27 04:43:29 293

原创 手斧Linux – 从LFS到Funtoo (93)

$(MAKEDB) -o $@ -        @echo "done."$(VAR_DB)/services.db: /etc/services        @echo -n "$(patsubst %.db,%,$(@F))... "        @$(AWK) 'BEGIN { FS="[ \t/]+" } \                 /^[ \t]*$

2015-06-27 04:42:36 379

原创 手斧Linux – 从LFS到Funtoo (92)

$(VAR_DB)/passwd.db: /etc/passwd        @echo -n "$(patsubst %.db,%,$(@F))... "        @$(AWK) 'BEGIN { FS=":"; OFS=":" } \                 /^[ \t]*$$/ { next } \                 /^[ \t]*#/ { 

2015-06-27 04:41:57 279

原创 手斧Linux – 从LFS到Funtoo (91)

gentoo:funtoo/1.0/linux-gnu/flavor/coreEOF1. 建立文件/etc/portage/postsync.dmkdir -pv /etc/portage/postsync.dcat >/etc/portage/postsync.d/q-reinitialize #!/bin/sh[ -x /usr/bin/q ] && /usr/bi

2015-06-27 04:41:08 321

原创 手斧Linux – 从LFS到Funtoo (90)

如果缺少这些用户和组,在后面用ebuild制做软件包时,会出错。第5节 安装portage树这里选用2012-12-02发而的portage树。树放在一个git库里,其中包含很多版本,这里取出的版本己验证过。命令如下:cd /usrtar xvf /sources/portage-latest.tar.xzcd portagegit checkout -f b10b

2015-06-27 04:40:04 345

原创 手斧Linux – 从LFS到Funtoo (89)

cd ..第3节 修改doebuild.py里的搜索路径让portage工作时能搜/tools/下的工具,否则会因找不到脚本里调用的程序报错而不能工作。用手工编辑,直观可靠,红色的两行为新增的内容。nano /usr/lib/portage/pym/portage/package/ebuild/doebuild.pyfor prefix in prefixes:

2015-06-27 04:39:00 327

原创 手斧Linux – 从LFS到Funtoo (88)

第8章 构造portage运行环境portage是gentoo/funtoo发生版本里用的包管理器,是用python编写的脚本程序。它需要一个gcc编译器来制作程序,这个要求,现在己经满足了。另一方面,它是用python语言写的,这是种解释型的语言,易于阅读和调试,但需要python才能运行,现在,己在/tools目录下准备好了python。现在开始编译安装portage和相关工具本身

2015-06-27 04:38:12 447

原创 手斧Linux – 从LFS到Funtoo (87)

gcc multiarch_wrapper.c -o /usr/bin/multiarch_wrapperecho 'echo "32bit Version"' > test-32echo 'echo "64bit Version"' > test-64chmod 755 test-32 test-64ln -sv /usr/bin/multiarch_wrapper test

2015-06-27 04:37:21 300

原创 手斧Linux – 从LFS到Funtoo (86)

readelf -l a.out | grep ': /lib'      [Requesting program interpreter: /lib/ld-linux.so.2]rm -v a.out dummy.c dummy.log第24节 配置multiarch wrapper并测试mkdir multiarch-wrappercd multiarch-wr

2015-06-27 04:36:00 247

原创 手斧Linux – 从LFS到Funtoo (85)

attempt to open /usr/lib64/gcc/x86_64-wolf-linux-gnu/4.6.1/../../../../lib64/libgcc_s.so succeededattempt to open /usr/lib64/gcc/x86_64-wolf-linux-gnu/4.6.1/../../../../lib64/libc.so succeededatte

2015-06-27 04:35:20 252

原创 手斧Linux – 从LFS到Funtoo (84)

开始编译。make 2>&1|tee out.make#make -k check 2>&1|tee out.checkmake install DESTDIR=$(pwd)/img 2>&1|tee out.install查看生成的程序。file img/usr/bin/gccimg/usr/bin/gcc: ELF 64-bit LSB executable, x8

2015-06-27 04:34:27 314

原创 手斧Linux – 从LFS到Funtoo (83)

cd gcc-4.6.1-multilib-p2tar -jxf ../../mpfr-3.1.0.tar.bz2mv -v mpfr-3.1.0 mpfrtar -jxf ../../gmp-5.0.2.tar.bz2mv -v gmp-5.0.2 gmptar -zxf ../../mpc-0.9.tar.gzmv -v mpc-0.9 mpcpatch -Np1 

2015-06-27 04:33:42 261

原创 手斧Linux – 从LFS到Funtoo (82)

接着编译64位版本。mkdir cloog-build-64cd cloog-build-64CC="gcc -B/usr/bin" LD="ld" \../cloog-0.16.3/configure --prefix=/usr --libdir=/usr/lib64 --with-gmp=system --enable-cxx \    --target=$WOLF64

2015-06-27 04:32:51 331

原创 手斧Linux – 从LFS到Funtoo (81)

cd ..安装ppl。cp -afv ppl-build-32/img/usr/{bin,include,lib32} /usr/cp -afv ppl-build-64/img/* /第21节 编译安装cloog  32位 64位命令如下:tar xvfz ../cloog-0.16.3.tar.gz先编译32位版本。mkdir cloog-bui

2015-06-27 04:32:04 300

原创 手斧Linux – 从LFS到Funtoo (80)

libstdc++.so.6 => /usr/lib64/../lib64/libstdc++.so.6 (0x00007fb9f8838000)libm.so.6 => /lib/libm.so.6 (0x00007fb9f85b1000)libc.so.6 => /lib/libc.so.6 (0x00007fb9f8204000)libgcc_s.so.1 => /usr/lib

2015-06-27 04:31:13 292

原创 手斧Linux – 从LFS到Funtoo (79)

file img/usr/lib32/libpwl.so.5.0.0 img/usr/lib32/libpwl.so.5.0.0: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), dynamically linked, not strippedldd img/usr/lib32/libpwl.so.5.0.0 

2015-06-27 04:30:11 368

原创 手斧Linux – 从LFS到Funtoo (78)

第20节 编译安装ppl  32位 64位命令如下:tar xvf ../ppl_0.11.2.orig.tar.bz2先编译32位版本,mkdir ppl-build-32cd ppl-build-32CC="gcc -m32" CXX="g++ -m32" \../ppl-0.11.2/configure --prefix=/usr --libdir=/us

2015-06-27 04:29:03 310

原创 手斧Linux – 从LFS到Funtoo (77)

make html 2>&1|tee out.htmlmake install-html  DESTDIR=$(pwd)/img 2>&1|tee out.htmlinstall查看编译生成的程序。file img/usr/lib32/libmpfr.so.4.1.0 img/usr/lib32/libmpfr.so.4.1.0: ELF 32-bit LSB shared o

2015-06-27 04:27:53 267

原创 手斧Linux – 从LFS到Funtoo (76)

查看生成的程序。file  img/usr/lib32/libgmp.so.10.0.2 img/usr/lib32/libgmp.so.10.0.2: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), dynamically linked, not stripped将文档和生成的32位库安装到位。cd .

2015-06-26 23:17:39 245

原创 手斧Linux – 从LFS到Funtoo (75)

将会替下/tools/bin/gcc工作,所以,在这里看到的gcc引用的程序变成了/usr/bin/gcc了。第17节 编译安装gmp 32位命令如下:mv -v /usr/include/gmp{,-64}.hcat > /usr/include/gmp.h /* gmp.h - Stub Header */#ifndef __STUB__GMP_H__#de

2015-06-26 23:16:37 256

原创 手斧Linux – 从LFS到Funtoo (74)

COLLECT_LTO_WRAPPER=/tools/libexec/gcc/x86_64-wolf-linux-gnu/4.6.1/lto-wrapperTarget: x86_64-wolf-linux-gnuConfigured with: ../gcc-4.6.1-p2/configure --prefix=/tools --libdir=/tools/lib64 --with-l

2015-06-26 23:15:53 285

原创 手斧Linux – 从LFS到Funtoo (73)

tar -jxf ../../mpfr-3.1.0.tar.bz2mv -v mpfr-3.1.0 mpfrtar -jxf ../../gmp-5.0.2.tar.bz2mv -v gmp-5.0.2 gmptar -zxf ../../mpc-0.9.tar.gzmv -v mpc-0.9 mpcpatch -Np1 -i ../../gcc-4.6.1-cross_c

2015-06-26 23:15:07 224

原创 手斧Linux – 从LFS到Funtoo (72)

查看生成的程序file img/usr/lib64/libmpfr.so.4.1.0 img/usr/lib64/libmpfr.so.4.1.0: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, not stripped将编译结果安装到位。cp -afv img/* /

2015-06-26 23:13:51 306

原创 手斧Linux – 从LFS到Funtoo (71)

开始编译。make 2>&1|tee out.makemake install DESTDIR=$(pwd)/img 2>&1|tee out.install查看编译生成的程序。file img/usr/lib64/libgmp.so.10.0.2 img/usr/lib64/libgmp.so.10.0.2: ELF 64-bit LSB shared object, x

2015-06-26 23:12:58 245

原创 手斧Linux – 从LFS到Funtoo (70)

CC_FOR_BUILD='$(CC)'CC_FOR_TARGET='$(CC)'开始编译。make configure-host 2>&1|tee out.makemake tooldir=/usr 2>&1|tee out.make -a#make -k checkmake install tooldir=/usr DESTDIR=$(pwd)/img  2>&1|

2015-06-26 23:11:38 243

原创 手斧Linux – 从LFS到Funtoo (69)

cd file-5.09-64CFLAGS='-mstackrealign -fPIC -O3' \CC="gcc -B/lib64 -B/lib64 -L/usr/lib64 -L/lib64" \./configure --prefix=/usr --libdir=/usr/lib64 --target=$WOLF64_TGT --build=$WOLF64_TGT查看

2015-06-26 23:10:40 255

原创 手斧Linux – 从LFS到Funtoo (68)

file img-64/lib64/libz.so.1.2.5 img-64/lib64/libz.so.1.2.5: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, not stripped将编译出来的64位的文件拷到位置上。cp -av img-64/* /cd ..

2015-06-26 23:09:51 251

原创 手斧Linux – 从LFS到Funtoo (67)

查看Makefile,可看到CC=i686-wolf-linux-gnu-gcc -B/usr/bin -I/usr/include -B/usr/lib32 -L/usr/lib32make  2>&1|tee out.make#make check  2>&1|tee out.checkmake DESTDIR=$(pwd)/img-i686 install 2>&1|te

2015-06-26 23:06:02 229

原创 手斧Linux – 从LFS到Funtoo (66)

int main(int argc, char* argv[]){ printf("I am 32bit,runs on the 64bit host!\n"); return 0;}EOF$WOLF32_TGT-gcc dummy.c编译成功。./a.outI am 32bit,runs on the 64bit host!file a.outa.ou

2015-06-26 23:05:00 219

原创 手斧Linux – 从LFS到Funtoo (65)

第8节 调整nsswitch.conf glibc的工作与之有关。命令如下:cat > /etc/nsswitch.conf # Begin /etc/nsswitch.confpasswd: filesgroup: filesshadow: fileshosts: files dnsnetworks: filesprotocols: filesse

2015-06-26 23:04:12 246

原创 手斧Linux – 从LFS到Funtoo (64)

第7节 编译安装 glibc 32位glibc是充分自给自足的代码,但是,i686的glibc要用i686的gcc来编译。前面,我们己经做好了准备,现在开始编译i686的glibc 。命令如下:mkdir -v glibc-build-i686cd glibc-build-i686echo "install_root = $(pwd)/img" >configparms

2015-06-26 23:03:13 244

原创 手斧Linux – 从LFS到Funtoo (63)

tar -jxf ../../gmp-5.0.2.tar.bz2mv -v gmp-5.0.2 gmptar -zxf ../../mpc-0.9.tar.gzmv -v mpc-0.9 mpcpatch -Np1 -i ../../gcc-4.6.1-cross_compile-1.patchcd ..mkdir -v gcc-build-p1-i686cd gcc-

2015-06-26 23:02:24 219

原创 手斧Linux – 从LFS到Funtoo (62)

Thread model: posixgcc version 4.6.1 (GCC) 正是所期望的,用 x86_64-wolf-linux-gnu做出 i686-wolf-linux-gnu。开始编译:make LIB_PATH=/tools/lib32  2>&1 |tee out.makemake install DESTDIR=$(pwd)/img  2>&1 |

2015-06-26 23:01:44 253

原创 手斧Linux – 从LFS到Funtoo (61)

file a.outa.out: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.25, not strippedreadelf -l a.out |grep Requesting      [Requesting 

2015-06-26 23:00:54 311

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除