初めに、私は、イエス・キリストを通して、あなたがた一同について私の神に感謝します。あなたがたの信仰が世界中に語り伝えられているからです。
ローマの信徒への手紙1.8ー15
私が御子の福音を宣べ伝えながら心から仕えている神が証ししてくださることですが、私は、あなたがたのことを絶えず思い起こし、
祈るときにはいつも、神の御心によって、あなたがたのところに行く道が開かれるようにと願っています。
あなたがたに会いたいと切に望むのは、霊の賜物をあなたがたに幾らかでも分け与えて、力づけたいからです。
というよりも、あなたがたのところで、お互いに持っている信仰によって、共に励まし合いたいのです。
きょうだいたち、ぜひ知っておいてほしい。ほかの異邦人のところと同じく、あなたがたのところでも、何か実りを得たいと望んで、何度もそちらに行こうとしたのですが、今まで妨げられているのです。
私には、ギリシア人にも未開の人にも、知恵のある人にもない人にも、果たすべき責任があります。
それで、ローマにいるあなたがたにも、ぜひ福音を告げ知らせたいのです。
開発環境の構築〜足りないビルドツールの確認〜
コメント欄にあるように、ビルドに必要なツールが揃っているか確認するシェルスクリプト、を作成して実行する。
足りない物を順次インストールしていく。
version-check.sh
#!/bin/bash
# Simple script to list version numbers of critical development tools
export LC_ALL=C
bash --version | head -n1 | cut -d" " -f2-4
MYSH=$(readlink -f /bin/sh)
echo "/bin/sh -> $MYSH"
echo $MYSH | grep -q bash || echo "ERROR: /bin/sh does not point to bash"
unset MYSH
echo -n "Binutils: "; ld --version | head -n1 | cut -d" " -f3-
bison --version | head -n1
if [ -h /usr/bin/yacc ]; then
echo "/usr/bin/yacc -> `readlink -f /usr/bin/yacc`";
elif [ -x /usr/bin/yacc ]; then
echo yacc is `/usr/bin/yacc --version | head -n1`
else
echo "yacc not found"
fi
echo -n "Coreutils: "; chown --version | head -n1 | cut -d")" -f2
diff --version | head -n1
find --version | head -n1
gawk --version | head -n1
if [ -h /usr/bin/awk ]; then
echo "/usr/bin/awk -> `readlink -f /usr/bin/awk`";
elif [ -x /usr/bin/awk ]; then
echo awk is `/usr/bin/awk --version | head -n1`
else
echo "awk not found"
fi
gcc --version | head -n1
g++ --version | head -n1
grep --version | head -n1
gzip --version | head -n1
cat /proc/version
m4 --version | head -n1
make --version | head -n1
patch --version | head -n1
echo Perl `perl -V:version`
python3 --version
sed --version | head -n1
tar --version | head -n1
makeinfo --version | head -n1 # texinfo version
xz --version | head -n1
echo 'int main(){}' > dummy.c && g++ -o dummy dummy.c
if [ -x dummy ]
then echo "g++ compilation OK";
else echo "g++ compilation failed"; fi
rm -f dummy.c dummy
sudo chmod +x version-check.sh
./version-check.sh
【Note】
sudo apt-get remove --purge man-db
(マニュアルのトリガー処理中にハングアップする事があるが、使わないのでパージしておく。)
開発環境の構築〜足りないビルドツールのインストール〜
シンボリックリンクを修正し、足りないパッケージをインストールする。
sudo unlink /bin/sh
sudo ln -s bash /bin/sh
sudo apt install binutils
sudo apt install bison
sudo apt install gawk
sudo apt install gcc
sudo apt install g++
sudo apt install make
sudo apt install patch
sudo apt install texinfo
ソースディレクトリを作成し、本書の誘導に従って、wgetを利用して必要なパッケージをダウンロードする。
sudo mkdir /mnt/lfs/sources
sudo chmod a+wt /mnt/lfs/sources
sudo apt install wget
sudo wget https://www.linuxfromscratch.org/lfs/view/stable/wget-list-sysv
sudo wget --input-file=wget-list-sysv --continue --directory-prefix=/mnt/lfs/sources
sudo wget https://www.linuxfromscratch.org/lfs/view/stable/md5sums
zlib-1.2.12とexpat-2.4.8がバージョンアップされてリンクが切れていたので個別にダウンロードする。
cd /mnt/lfs/sources
sudowget https://src.fedoraproject.org/lookaside/extras/zlib/zlib-1.2.12.tar.xz/sha512/12940e81e988f7661da52fa20bdc333314ae86a621fdb748804a20840b065a1d6d984430f2d41f3a057de0effc6ff9bcf42f9ee9510b88219085f59cbbd082bd/zlib-1.2.12.tar.xz
sudo wget https://github.com/libexpat/libexpat/releases/download/R_2_4_8/expat-2.4.8.tar.xz
ハッシュ値を確認し、ファイルが汚染されていない事を確かめる。
sudo md5sum -c ~/md5sums
〜続く〜