日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

LFS 安装笔记 (二)

發(fā)布時(shí)間:2025/3/20 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 LFS 安装笔记 (二) 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
第三部?? 構(gòu)建LFS系統(tǒng)<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

安裝系統(tǒng)基礎(chǔ)軟件

?

掛載虛擬內(nèi)核文件系統(tǒng) ----- 指那些是由內(nèi)核產(chǎn)生但并不存在于硬盤上(存在于內(nèi)存中)的文件系統(tǒng),他們被用來與內(nèi)核進(jìn)行通信

mkdir -v $LFS/{dev,proc,sys}

創(chuàng)建初始設(shè)備節(jié)點(diǎn)

mknod -m 600 /mnt/lfs/dev/console c 5 1

mknod -m 666 /mnt/lfs/dev/null c 1 3

掛載并填充dev目錄

mount -v --bind /dev/ /mnt/lfs/dev/

掛載虛擬內(nèi)核文件系統(tǒng)

mount -vt devpts devpts /mnt/lfs/dev/pts

mount -vt tmpfs shm /mnt/lfs/dev/shm/

mount -vt proc proc /mnt/lfs/proc/

mount -vt sysfs sysfs /mnt/lfs/sys/

?

進(jìn)入chroot環(huán)境

chroot "$LFS" /tools/bin/env -i??? ?HOME=/root TERM="$TERM" PS1='\u:\w\$ '???? PATH=/bin:/usr/bin:/sbin:/usr/sbin:/tools/bin???? /tools/bin/bash --login +h

?

(報(bào)錯(cuò):

/bin/bash: error while loading shared libraries: libtermcap.so.2: cannot open shared object file: No such file or directory

chroot: failed to run command `bash': No such file or directory

缺少模塊等等 可以使用 ldd bash 看依賴關(guān)系來解決,然后設(shè)置符號(hào)鏈接就可以)

?

會(huì)提示I have no name! 這是正常的,因?yàn)?span lang="en-us"> /etc/passwd 還沒有創(chuàng)建

?

創(chuàng)建系統(tǒng)目錄結(jié)構(gòu)

mkdir -pv /{bin,boot,etc/opt,home,lib,mnt,opt}

mkdir -pv /{media/{floppy,cdrom},sbin,srv,var}

install -dv -m 0755 /root

install -dv -m 1777 /tmp /var/tmp?

mkdir –pv /usr/local

mkdir -pv /usr/local/{bin,include,lib,sbin,src}

mkdir -pv /usr/local/share/{doc,info,locale,man}

mkdir -v /usr/local/share/{misc,terminfo,zoneinfo}

mkdir -pv /usr/local/share/man/{1..8}

?

for dir in /usr? /usr/local/ ;do

> ln -sv share/{man,doc,info} $dir

> done

?

mkdir -v /var/{lock,log,mail,run,spool}

mkdir -pv /var/{opt,cache,lib/{misc,locate},local}

?

case $(uname -m ) in

> x86_64) ln -sv lib /lib64 && ln -sv lib /usr/lib64;;

> esac

?

創(chuàng)建必須的文件和符號(hào)鏈接

ln -sv /tools/bin/{bash,cat,echo,grep,pwd,stty}? /bin/

ln -sv /tools/bin/perl /usr/bin

ln -sv /tools/lib/libgcc_s.so{,.1}? /usr/lib

ln -sv /tools/lib/libstdc++.so{,.6} /usr/lib/

ln -sv bash? /bin/sh

touch /etc/mtab

?

cat > /etc/passwd <<"EOF"

> root:x:0:0:root:/root:/bin/bash

> nobody:x:99:99:unprivileged User:/dev/null:/bin/false

> EOF

?

cat > /etc/group <<"EOF"

> root:x:0:

> bin:x:1:

> sys:x:2:

> kmem:x:3:

> tty:x:4:

> tape:x:5:

> daemon:x:6:

> floppy:x:7:

> disk:x:8:

> lp:x:9:

> uucp:x:10:

> audio:x:11:

> video:x:12:

> utmp:x:13:

> usb:x:14:

> cdrom:x:15:

> mail:x:34:

> nogroup:x:99:

> EOF

?

exec /tools/bin/bash --login +h (因?yàn)?span lang="en-us">passwd 和group文件都已經(jīng)創(chuàng)建,所以目前顯示應(yīng)該是root:/#

?

創(chuàng)建一些程序的所需的日志文件,否則這些程序?qū)o法運(yùn)行:

touch /var/run/utmp? /var/log/{btmp,lastlog,wtmp}

chgrp -v utmp /var/run/utmp? /var/log/lastlog

chmod -v 664 /var/run/utmp /var/log/lastlog

?

安裝linux API headers ---將內(nèi)核的應(yīng)用程序編程接口(API)提供給 Glibc 使用

cd sources/linux-2.6.32.8

make mrproper

make? headers_check

(報(bào)錯(cuò):gcc: error trying to exec 'cc1': execvp: No such file or directory

make[1]: *** [scripts/basic/fixdep] Error 1

make: *** [scripts_basic] Error 2

解決辦法:找到cc1 所在位置,并復(fù)制到對應(yīng)位置,cp /mnt/lfs/tools/libexec/gcc/x86_64-unknown-linux-gnu/4.4.3/cc1?? /mnt/lfs/usr/lib/gcc/x86_64-unknown-linux-gnu/4.4.3/cc1

(報(bào)錯(cuò):error while loading shared libraries: libmpfr.so.1: cannot open shared object file: No such file or directory? 使用ldd find 查看所需文件放在在哪里,做符號(hào)鏈接或者copy都可以)

(報(bào)錯(cuò):

/bin/../lib/gcc/x86_64-unknown-linux-gnu/4.4.3/../../../../x86_64-unknown-linux-gnu/bin/as: error while loading shared libraries: libz.so.1: cannot open shared object file: No such file or directory 解決方法與上面一樣)

?

make INSTALL_HDR_PATH=dest headers_install

cp -rv dest/include/*? /usr/include/

?

安裝manpages ---- 包含多余1900頁的幫助文檔

tar -jxvf man-pages-3.23.tar.bz2

cd man-pages-3.23

make install

?

安裝glibc ---包含了主要的 C 語言庫

cd?? cd glibc-2.11.1??

DL=$(readelf -l /bin/sh | sed -n 's@.*interpret.*/tools\(.*\)]$@\1@p')??

?

unset DL

sed -i 's|@BASH@|/bin/bash|' elf/ldd.bash.in

?

mkdir? ../glibc-build

cd? ../glibc-build

cp -v ../glibc-2.11.1/iconvdata/gconv-modules iconvdata

make

make? install

(報(bào)錯(cuò):

??? 找不到/etc/ld.so.conf文件,這個(gè)文件可以直接創(chuàng)建就可以了)

報(bào)錯(cuò):

/bin/../lib/gcc/x86_64-unknown-linux-gnu/4.4.3/../../../../x86_64-unknown-linux-gnu/bin/ld: cannot find -lcidn

Execution of gcc failed!

解決辦法: 找到cidm.so相關(guān)的文件并復(fù)制到相應(yīng)的位置即可)

?

mkdir -pv /usr/lib/locale

make localedata/install-locales

?

cat > /etc/nsswitch.conf << "EOF"

# Begin /etc/nsswitch.conf

passwd: files

group: files

shadow: files

hosts: files dns

networks: files

protocols: files

services: files

ethers: files

rpc: files

# End /etc/nsswitch.conf

EOF

?

cp -v --remove-destination /usr/share/zoneinfo/Asia/Chongqing? /etc/localtime????

?

cat > /etc/ld.so.conf << "EOF"

# Begin /etc/ld.so.conf

/usr/local/lib

/opt/lib

# End /etc/ld.so.conf

EOF

?

再次調(diào)整工具鏈

mv -v /tools/$(gcc -dumpmachine)/bin/{ld,ld-old}

mv -v /tools/bin/{ld-new,ld}

ln -sv /tools/bin/ld /tools/$(gcc -dumpmachine)/bin/ld

?

gcc -dumpspecs|sed -e 's@/tools@@g'-e '/\*startfile_prefix_spec:/{n;s@.*@/usr/lib/ @}'???? -e '/\*cpp:/{n;s@$@ -isystem /usr/include@}' > `dirname $(gcc --print-libgcc-file-name)`/specs

?

安裝zlib ---包含 zlib 庫,很多程序中的壓縮或者解壓縮程序都會(huì)用到這個(gè)庫

tar -jxvf zlib-1.2.3.tar.bz2

./configure --prefix=/usr --shared --libdir=/lib

make

make install

(報(bào)錯(cuò):

gcc -O3 -DNO_vsnprintf -DUSE_MMAP -o example example.o -L. libz.a

/bin/../lib/gcc/x86_64-unknown-linux-gnu/4.4.3/../../../../x86_64-unknown-linux-gnu/bin/ld: crtn.o: No such file: No such file or directory

解決方法: 找到crtn.o 并復(fù)制到相應(yīng)的文件夾)

ln -sfv ../../lib/libz.so.1.2.3 /usr/lib/libz.so

make clean

./configure --prefix=/usr

make install

chmod -v 644 /usr/lib/libz.a

?

安裝binutils ---一組開發(fā)工具,包括連接器、匯編器和其他用于目標(biāo)文件和檔案的工具

cd? binutils-build

../sources/binutils-2.20/configure? --prefix=/usr/?? --enable-shared

make tooldir=/usr

make tooldir=/usr install

cp -v ../binutils-2.20/include/libiberty.h /usr/include

?

安裝gmp ----包含數(shù)學(xué)庫。庫中有用于專門計(jì)算單精度數(shù)值的函數(shù)。

cd gmp-5.0.0

./configure --prefix=/usr --enable-cxx --enable-mpbsd

make

make install

?

安裝mpfr ---包含高精度數(shù)學(xué)函數(shù)

cd mpfr-2.4.2

./configure --prefix=/usr --enable-thread-safe

make

make install

?

安裝file --- 包含判定文件類型的工具

./configure --prefix=/usr

make

make install

?

安裝gcc----包含 GNU 編譯器,其中有 C C++ 編譯器

cd gcc-build

../gcc-4.4.3/configure --prefix=/usr???? --libexecdir=/usr/lib --enable-shared???? --enable-threads=posix --enable-__cxa_atexit???? --enable-clocale=gnu --enable-languages=c,c++???? --disable-multilib --disable-bootstrap? --with-gmp=/gmp/?? --with-mpfr=/mpfr/

?

make

make install

?

安裝sed

./configure --prefix=/usr --bindir=/bin --htmldir=/usr/share/doc/sed-4.2.1

make

make install

?

安裝pkg-config ---configure make 中將include library 路徑傳給編譯工具

tar -zxvf pkg-config-0.23.tar.gz

cd pkg-config-0.23

./configure --prefix=/usr

make

make install

?

安裝ncurses

./configure --prefix=/usr --with-shared --without-debug --enable-widec

make

make install

?

安裝Util-linux-ng

tar -jxvf util-linux-ng-2.17.tar.bz2

sed -e 's@etc/adjtime@var/lib/hwclock/adjtime@g'???? -i $(grep -rl '/etc/adjtime' .)

mkdir -pv /var/lib/hwclock

./configure --enable-arch --enable-partx --enable-write

make

make install

?

安裝E2fsprogs --- 管理ext2ext3ext4文件系統(tǒng)

tar -zxvf e2fsprogs-1.41.10.tar.gz

mkdir -v build

cd build/

../configure --prefix=/usr --with-root-prefix=""???? --enable-elf-shlibs --disable-libblkid --disable-libuuid???? --disable-uuidd --disable-fsck

make install

make install-libs

?

安裝Coreutils ----包括一套顯示、設(shè)置基本系統(tǒng)屬性的工具

cd coreutils-8.4

./configure --prefix=/usr???? --enable-no-install-program=kill,uptime

make

make install

?

安裝Iana-Etc? ---- 軟件包提供了網(wǎng)絡(luò)服務(wù)和協(xié)議的數(shù)據(jù)

tar -jxvf iana-etc-2.30.tar.bz2

cd iana-etc-2.30

make

make install

?

安裝M4 ----包含一個(gè)宏處理器

./configure --prefix=/usr

make

make install

?

轉(zhuǎn)載于:https://blog.51cto.com/linuxlab/315277

總結(jié)

以上是生活随笔為你收集整理的LFS 安装笔记 (二)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 亚洲一区电影网 | 国产第一亚洲 | 国精产品一区一区三区免费视频 | 午夜福利电影一区 | 国产精品午夜在线 | 另类小说一区二区 | 温柔少妇的高潮呻吟 | 国产精品51麻豆cm传媒 | 少妇aa| 综合激情在线 | 欧美大尺度做爰啪啪床戏明星 | 欧美人xxxx | 老司机免费在线视频 | 欧美日韩三 | 乖女从小调教h尿便器小说 欧美韩一区二区 | 久久人人爽人人爽人人 | 中文字幕一区在线播放 | av涩涩| 久久久久久久久久久久久国产 | 欧美中文字幕在线观看 | 久久中文字幕国产 | 又粗又大又硬毛片免费看 | 草久网| 在线播放小视频 | 96久久精品 | 玖玖视频网 | 国产午夜三级 | 男人操女人网站 | 男人添女人下部高潮全视频 | 国产真实交换夫妇视频 | 亚洲av永久无码精品放毛片 | 久久久免费看 | 日本伦理一区二区三区 | 三级黄色图片 | 国产美女永久免费无遮挡 | 1区2区3区在线观看 久久久久久久久久久影院 成人网址在线观看 | 日本一区二区久久 | 亚洲一区不卡在线 | 这里只有精品视频 | 人人看人人干 | 亚洲一区二区久久 | 麻豆精品av | 夜夜躁狠狠躁 | av黄色一级片| www.欧美日韩 | 69国产在线 | 夜夜夜撸 | 国产乱码精品一区二区三区五月婷 | 五月天激情综合网 | 黄色片网站在线免费观看 | 婷婷综合另类小说色区 | 亚洲偷拍一区 | 天天操天天射天天 | 伊人av网站 | 免费成人黄 | 亚洲激情免费 | aa视频网站| 免费av一区二区三区 | 黄色污污视频软件 | 日韩欧美高清在线观看 | 黄色片怎么看 | 亚洲国产精品一区二区三区 | av永久免费| 国产激情视频一区二区 | 91干网 | 久久合| 日本一区二区三区免费电影 | 一个人在线免费观看www | 超级砰砰砰97免费观看最新一期 | 成人国产av一区二区三区 | 亚洲人成无码www久久久 | 先锋影音av中文字幕 | 成人免费无码大片a毛片抽搐色欲 | 亚州激情视频 | 久久久久中文字幕 | 国产精品久久无码一三区 | 日本不卡高字幕在线2019 | 深夜福利视频在线 | 伊人66| 97色干| 秋霞在线观看视频 | 农村老熟妇乱子伦视频 | 91天天综合 | 四川丰满少妇被弄到高潮 | 久久666| 69er小视频 | 欧美射图 | 国产成人无码精品久久久久 | 亚洲综合自拍 | 色女人av | 欧美成年人视频在线观看 | 北条麻妃一区二区三区在线观看 | 午夜久 | 色无极在线 | 神马久久精品 | 97自拍视频在线 | 两个人看的www视频免费完整版 | 在线观看亚洲欧美 | 涩涩免费网站 |