fc2ブログ

[LFS][LFS BOOK7.3]第5章 一時的環境の構築(p30)

■5.1. はじめに
・最小限のシステムを構築するために、以下の二段階の手順を踏むと。
  1.初めにホストシステムに依存しない新しいツールチェーン (コンパイラー、
    アセンブラー、リンカー、ライブラリ、その他の有用なユーティリティ) を構築。

  2.次にこのツールチェーンを使って、他の重要なツール類を構築。

・この章で生成されるファイル群は $LFS/tools ディレクトリ配下にインストールされる。
 次章にてインストールされるファイル群や、ホスト環境にあるファイル群とは区分けされる。
 ここでの作業は一時的なものなので、この後構築する LFS システムを汚さないため。

■5.2. ツールチェーンの技術的情報
 長文長いので、飛ばして、後から必要あれば読もう。

■5.3. 全般的なコンパイル手順
 重要な確認事項が書いてあるのでチェック。

・$LFSの設定 → echo $LFS /mnt/lfsだったからOK。
・bashシェル使用前提 → lfsユーザ作成時、bash指定したからOK。
・shはbashへのシンボリックリンク → /bin/sh -> bashってなってたからOK。
・/usr/bin/awkはgawkへのシンボリックリンク → /usr/bin/awk -> ../../bin/gawkでOKかな?
・/usr/bin/yaccはbisonへのシンボリックリンク → なんかyaccが見つからない。前にインストールしたはずだが。
  ※ suでrootにログインし、yum install bisonでインストールしたら、/usr/bin/bisonが生成された。
    あとはln -s bison yaccでリンク作成。



■5.4. Binutils-2.23.1 - 1回め
・説明では、ビルドする時ソースディレクトリではなく、以下のようなDIRを作るって書いてある。
 /mnt/lfs/sourcesから見たコマンドと理解。

mkdir -v ../binutils-build
cd ../binutils-build


 つまり、/mnt/lfsの下にbinutils-buildというDIRを作る事になる。
 やってみたが、root権限でないので、Permission Deniedって出た。実行場所間違ってるかな?


(2013/9/23追記)
・見落としてる内容はLFS BOOK7.3のp32のこれかな?

重要項目
ビルド作業では以下の点が重要です。
1. ソースやパッチファイルを配置するディレクトリは /mnt/lfs/sources/ などのように chroot 環境で
もアクセスが出来るディレクトリとしてください。 /mnt/lfs/tools/ ディレクトリにソースを置くこと
は やめて ください。
2. ソースディレクトリに入ります。
3. 各パッケージについて:
a. tar コマンドを使ってパッケージの tarball を伸張 (解凍) します。 第5章では、パッケージを伸
張 (解凍) するのは lfs ユーザーとします。
b. パッケージの伸張 (解凍) 後に生成されたディレクトリに入ります。
c. 本書の手順に従ってビルド作業を行っていきます。
d. ソースディレクトリに戻ります。
e. ビルド作業を通じて生成されたパッケージディレクトリを削除します。 さらに -
build なるディレクトリを生成していた場合は、特に指定がない限りはそれも削除します。



・上に従ってやってみる。まずはソースの置き場へ cd /mnt/lfs/sources で移動。

・最初にビルドするbinutilsのtar.gzを解凍する。

tar xvf binutils-2.23.1.tar.bz2



・コンパイル準備する。

../binutils-2.23.1/configure \
--prefix=/tools \
--with-sysroot=$LFS \
--with-lib-path=/tools/lib \
--target=$LFS_TGT \
--disable-nls \
--disable-werror



・展開後に生成されたbinutils-2.23.1ディレクトリへ移動してconfigure実行すると以下エラーが。

checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking target system type... i686-lfs-linux-gnu
checking for a BSD-compatible install... /usr/bin/install -c
checking whether ln works... yes
checking whether ln -s works... yes
checking for a sed that does not truncate output... /bin/sed
checking for gawk... gawk
checking for gcc... no
checking for cc... no
checking for cl.exe... no
configure: error: in `/mnt/lfs/sources';
configure: error: no acceptable C compiler found in $PATH
See `config.log' for more details.



・もともと、makeとかgccがインストールされてなかったのが問題と思い、インストール。

su でrootへログイン
yum install make
yum install gcc



・make、gccをインストールしてからconfigureやり直したら、エラー消えたっぽい。

・次にコンパイル。この時間が1SBUだとか。

make


 うちの環境ではmake終了までに約8分。

  ホストPC OS: ThinkPad X230 Win7 Home Pre 64bit SP1
  ホストPC CPU: Core i7-3520M 2.9GHz
  仮想PCソフト: VMware Player 5.0.2 build-1031769
  仮想PC OS: CentOS 6.4 i386 (32bit)
  仮想PCメモリ: 7888MB


・これでコンパイル終了し、通常ならここでテストスイートを実行するとか。
 しかし、システム構築初期のこの段階ではテストスイートのフレームワーク
  (Tcl, Expect, DejaGNU) が準備できてなく、さらにこの時点で生成されるプログラムは、
 すぐに次の生成作業によって置き換えられるので、この時点でテストを実行することは
 あまり意味が無いとの事。

 x86_64 にて作業をしている場合は、ツールチェーンの切り分けを適切に行うために
 シンボリックリンクを作成するとの事。
 しかし、今回の作業OSはCentOS 6.4 i386 (32bit)で、64bit版でないので、以下は不要と判断。
 下のコマンドは飛ばして、make installへ進む。

case $(uname -m) in
x86_64) mkdir -v /tools/lib && ln -sv lib /tools/lib64 ;;
esac



・パッケージをインストール。

make install



■5.5. GCC-4.7.2 - 1回め
・p35注記には、gccのtarballを展開して、そのディレクトリの中で後述の作業をすると書いてある。

注記
本節においては誤解が多く発生しています。 ここでの手順は他のものと同様であり、手順の概要 (パッ
ケージビルド手順) は説明済です。 まず初めに gcc の tarball を伸張 (解凍) し、生成されたソースディ
レクトリに移動します。 それに加えて本節では、以下の手順を行うものとなります。



・まずは、gccのtarballの展開。今思えばbinutilの時はtar xvfで解凍したが、.bz2の場合は
 tar jxvfでやるべきだったかな?出来てるっぽいし、まあ良いか。

tar jxvf gcc-4.7.2.tar.bz2

・次に、注記で書かれてたように、gcc-4.7.2ディレクトリ内で、次を実行すると。


tar -Jxf ../mpfr-3.1.1.tar.xz
mv -v mpfr-3.1.1 mpfr
tar -Jxf ../gmp-5.1.1.tar.xz
mv -v gmp-5.1.1 gmp
tar -zxf ../mpc-1.0.1.tar.gz
mv -v mpc-1.0.1 mpc



(2013/9/24追記)
 しかし、1つ目の「tar -Jxf ../mpfr-3.1.1.tar.xz」を実行すると、次のエラーが。

# tar -Jxf ../mpfr-3.1.1.tar.xz
tar (child): xz: Cannot exec: No such file or directory
tar (child): Error is not recoverable: exiting now
tar: Child returned status 2
tar: Error is ont recoverable: exiting now



 Web検索すると、このページで言ってるように、xzがインストールされてないからかな?

     tar v1.26によるxzファイル解凍には xz v5.0.3も必要

 おなじみのyumでインストールする。尚、rootでやらないとエラーが出る。
 suでrootログインしてから以下yumを実行し、インストール終わったらroot抜ける。

yum install xz


 今度は tar -Jxfコマンドで実行出来た。xzをインストールした後は実行成功。特にMSG無し。
 mpfr-3.1.1/ディレクトリが生成されたようだ。
 おそらく、CentOSインストール時に、Minimulの設定だったから、いろいろ不足してるみたい。

tar -Jxf ../mpfr-3.1.1.tar.xz



・その後も先に書いた手順で実行。エラー無く実行できた。

tar -Jxf ../mpfr-3.1.1.tar.xz
mv -v mpfr-3.1.1 mpfr
tar -Jxf ../gmp-5.1.1.tar.xz
mv -v gmp-5.1.1 gmp
tar -zxf ../mpc-1.0.1.tar.gz
mv -v mpc-1.0.1 mpc



・今度は以下の説明の通り、後述のコマンドを実行するとの事。

以下のコマンドは GCC のデフォルトのダイナミックリンカーの
配置ディレクトリを、既にインストールされている /tools とします。
また GCC のインクルードパスから /usr/include を除きます。


for file in \
$(find gcc/config -name linux64.h -o -name linux.h -o -name sysv4.h)
do
cp -uv $file{,.orig}
sed -e 's@/lib\(64\)\?\(32\)\?/ld@/tools&@g' \
-e 's@/usr@/tools@g' $file.orig > $file
echo '
#undef STANDARD_STARTFILE_PREFIX_1
#undef STANDARD_STARTFILE_PREFIX_2
#define STANDARD_STARTFILE_PREFIX_1 "/tools/lib/"
#define STANDARD_STARTFILE_PREFIX_2 ""' >> $file
touch $file.orig
done



(2013/9/27追記)
・上のバッチの説明がp35にあるが、説明書きでは、以下3つのいずれかが存在すると言ってるが、
 なぜか存在しない。

上のコマンドがよく分からない場合は一つ一つ読み下していってください。
まず gcc/config ディレクトリにはlinux.h, linux64.h, sysv4.h といった
ファイルのいずれかがあります。


・とりあえずバッチ実行してみた。PDFからコピーして、共有フォルダ経由で
 WindowsからVMware仮想マシンへファイルをコピー。
 バッチの先頭に「#!/bin/bash」を追加。
 実行すると、改行コードの問題っぽいMSG(^M)が出たので、dos2unixをrootでインストール。

yum install dos2unix


dos2unix  で改行コードをLinuxへ変換。それからバッチ実行したら何やら成功っぽい以下ログ。

   :
   :
`gcc/config/sparc/linux64.h' -> `gcc/config/sparc/linux64.h.orig'
`gcc/config/sparc/sysv4.h' -> `gcc/config/sparc/sysv4.h.orig'
`gcc/config/alpha/linux.h' -> `gcc/config/alpha/linux.h.orig'
`gcc/config/vax/linux.h' -> `gcc/config/vax/linux.h.orig'
`gcc/config/linux.h' -> `gcc/config/linux.h.orig'
`gcc/config/m32r/linux.h' -> `gcc/config/m32r/linux.h.orig'
`gcc/config/m68k/linux.h' -> `gcc/config/m68k/linux.h.orig'
`gcc/config/tilepro/linux.h' -> `gcc/config/tilepro/linux.h.orig'
`gcc/config/i386/linux.h' -> `gcc/config/i386/linux.h.orig'
`gcc/config/i386/linux64.h' -> `gcc/config/i386/linux64.h.orig'
`gcc/config/i386/sysv4.h' -> `gcc/config/i386/sysv4.h.orig'
`gcc/config/xtensa/linux.h' -> `gcc/config/xtensa/linux.h.orig'
`gcc/config/sh/linux.h' -> `gcc/config/sh/linux.h.orig'
`gcc/config/cris/linux.h' -> `gcc/config/cris/linux.h.orig'
`gcc/config/mips/linux.h' -> `gcc/config/mips/linux.h.orig'
`gcc/config/mips/linux64.h' -> `gcc/config/mips/linux64.h.orig'
`gcc/config/s390/linux.h' -> `gcc/config/s390/linux.h.orig'
`gcc/config/mn10300/linux.h' -> `gcc/config/mn10300/linux.h.orig'
`gcc/config/frv/linux.h' -> `gcc/config/frv/linux.h.orig'
`gcc/config/bfin/linux.h' -> `gcc/config/bfin/linux.h.orig'
`gcc/config/ia64/linux.h' -> `gcc/config/ia64/linux.h.orig'
`gcc/config/ia64/sysv4.h' -> `gcc/config/ia64/sysv4.h.orig'
`gcc/config/microblaze/linux.h' -> `gcc/config/microblaze/linux.h.orig'
`gcc/config/tilegx/linux.h' -> `gcc/config/tilegx/linux.h.orig'



・次の理由で、後述のsedコマンドを実行すると。内容はよく分からんけど実行してみる。
 何もMSGなく、正常に実行出来たようだ。

GCC はスタックプロテクション (stack protection) を正しく検出しません。
このことは Glibc-2.17 においてビルドする際には問題となります。
そこで以下のコマンドを実行することで解消します。


sed -i '/k prot/agcc_cv_libc_provides_ssp=yes' gcc/configure



・次もよく分からないが、次の理由で後述のsedコマンドを実行と。

.info ファイルはビルドしないようにします。
このファイルは今時点は不要なものであり、また現在の makeinfo で生成しても
不十分なものが生成されてしまうためです。


sed -i 's/BUILD_INFO=info/BUILD_INFO=/' gcc/configure



・GCCドキュメントではソースDIR以外の専用ビルドDIRの作成が推奨、という事で、
 以下の通りDIR生成して、そこへ移動する。今の場所を示すためにあえてpwdしてる。

# pwd
/mnt/lfs/sources/gcc-4.7.2
# mkdir -v ../gcc-build
# cd ../gcc-build



・gccコンパイルのための準備。

../gcc-4.7.2/configure \
--target=$LFS_TGT \
--prefix=/tools \
--with-sysroot=$LFS \
--with-newlib \
--without-headers \
--with-local-prefix=/tools \
--with-native-system-header-dir=/tools/include \
--disable-nls \
--disable-shared \
--disable-multilib \
--disable-decimal-float \
--disable-threads \
--disable-libmudflap \
--disable-libssp \
--disable-libgomp \
--disable-libquadmath \
--enable-languages=c \
--with-mpfr-include=$(pwd)/../gcc-4.7.2/mpfr/src \
--with-mpfr-lib=$(pwd)/mpfr/src/.libs



・/mnt/lfs/sources/gcc-build でconfigureしたログが以下。

This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.

It was created by configure, which was
generated by GNU Autoconf 2.64. Invocation command line was

$ ../gcc-4.7.2/configure --target=i686-lfs-linux-gnu --prefix=/tools --with-sysroot=/mnt/lfs --with-newlib --without-headers --with-local-prefix=/tools --with-native-system-header-dir=/tools/include --disable-nls --disable-shared --disable-multilib --disable-decimal-float --disable-threads --disable-libmudflap --disable-libssp --disable-libgomp --disable-libquadmath --enable-languages=c --with-mpfr-include=/mnt/lfs/sources/gcc-build/../gcc-4.7.2/mpfr/src --with-mpfr-lib=/mnt/lfs/sources/gcc-build/mpfr/src/.libs

## --------- ##
## Platform. ##
## --------- ##

hostname = lfs
uname -m = i686
uname -r = 2.6.32-358.el6.i686
uname -s = Linux
uname -v = #1 SMP Thu Feb 21 21:50:49 UTC 2013

/usr/bin/uname -p = unknown
/bin/uname -X = unknown

/bin/arch = i686
/usr/bin/arch -k = unknown
/usr/convex/getsysinfo = unknown
/usr/bin/hostinfo = unknown
/bin/machine = unknown
/usr/bin/oslevel = unknown
/bin/universe = unknown

PATH: /tools/bin
PATH: /bin
PATH: /usr/bin


## ----------- ##
## Core tests. ##
## ----------- ##

configure:2237: checking build system type
configure:2251: result: i686-pc-linux-gnu
configure:2298: checking host system type
configure:2311: result: i686-pc-linux-gnu
configure:2331: checking target system type
configure:2344: result: i686-lfs-linux-gnu
configure:2398: checking for a BSD-compatible install
configure:2466: result: /usr/bin/install -c
configure:2477: checking whether ln works
configure:2499: result: yes
configure:2503: checking whether ln -s works
configure:2507: result: yes
configure:2514: checking for a sed that does not truncate output
configure:2578: result: /bin/sed
configure:2587: checking for gawk
configure:2603: found /bin/gawk
configure:2614: result: gawk
configure:3070: checking for libitm support
configure:3080: result: yes
configure:3776: checking for gcc
configure:3792: found /usr/bin/gcc
configure:3803: result: gcc
configure:4032: checking for C compiler version
configure:4041: gcc --version >&5
gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-3)
Copyright (C) 2010 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

configure:4052: $? = 0
configure:4041: gcc -v >&5
Using built-in specs.
Target: i686-redhat-linux
Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-bootstrap --enable-shared --enable-threads=posix --enable-checking=release --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-languages=c,c++,objc,obj-c++,java,fortran,ada --enable-java-awt=gtk --disable-dssi --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-1.5.0.0/jre --enable-libgcj-multifile --enable-java-maintainer-mode --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --disable-libjava-multilib --with-ppl --with-cloog --with-tune=generic --with-arch=i686 --build=i686-redhat-linux
Thread model: posix
gcc version 4.4.7 20120313 (Red Hat 4.4.7-3) (GCC)
configure:4052: $? = 0
configure:4041: gcc -V >&5
gcc: '-V' option must have argument
configure:4052: $? = 1
configure:4041: gcc -qversion >&5
gcc: unrecognized option '-qversion'
gcc: no input files
configure:4052: $? = 1
configure:4072: checking for C compiler default output file name
configure:4094: gcc conftest.c >&5
configure:4098: $? = 0
configure:4135: result: a.out
configure:4151: checking whether the C compiler works
configure:4160: ./a.out
configure:4164: $? = 0
configure:4179: result: yes
configure:4186: checking whether we are cross compiling
configure:4188: result: no
configure:4191: checking for suffix of executables
configure:4198: gcc -o conftest conftest.c >&5
configure:4202: $? = 0
configure:4224: result:
configure:4230: checking for suffix of object files
configure:4252: gcc -c conftest.c >&5
configure:4256: $? = 0
configure:4277: result: o
configure:4281: checking whether we are using the GNU C compiler
configure:4300: gcc -c conftest.c >&5
configure:4300: $? = 0
configure:4309: result: yes
configure:4318: checking whether gcc accepts -g
configure:4338: gcc -c -g conftest.c >&5
configure:4338: $? = 0
configure:4379: result: yes
configure:4396: checking for gcc option to accept ISO C89
configure:4460: gcc -c -g -O2 conftest.c >&5
configure:4460: $? = 0
configure:4473: result: none needed
configure:4551: checking for g++
configure:4581: result: no
configure:4551: checking for c++
configure:4581: result: no
configure:4551: checking for gpp
configure:4581: result: no
configure:4551: checking for aCC
configure:4581: result: no
configure:4551: checking for CC
configure:4581: result: no
configure:4551: checking for cxx
configure:4581: result: no
configure:4551: checking for cc++
configure:4581: result: no
configure:4551: checking for cl.exe
configure:4581: result: no
configure:4551: checking for FCC
configure:4581: result: no
configure:4551: checking for KCC
configure:4581: result: no
configure:4551: checking for RCC
configure:4581: result: no
configure:4551: checking for xlC_r
configure:4581: result: no
configure:4551: checking for xlC
configure:4581: result: no
configure:4605: checking for C++ compiler version
configure:4614: g++ --version >&5
../gcc-4.7.2/configure: line 4616: g++: command not found
configure:4625: $? = 127
configure:4614: g++ -v >&5
../gcc-4.7.2/configure: line 4616: g++: command not found
configure:4625: $? = 127
configure:4614: g++ -V >&5
../gcc-4.7.2/configure: line 4616: g++: command not found
configure:4625: $? = 127
configure:4614: g++ -qversion >&5
../gcc-4.7.2/configure: line 4616: g++: command not found
configure:4625: $? = 127
configure:4629: checking whether we are using the GNU C++ compiler
configure:4648: g++ -c conftest.cpp >&5
../gcc-4.7.2/configure: line 1754: g++: command not found
configure:4648: $? = 127
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME ""
| #define PACKAGE_TARNAME ""
| #define PACKAGE_VERSION ""
| #define PACKAGE_STRING ""
| #define PACKAGE_BUGREPORT ""
| #define PACKAGE_URL ""
| /* end confdefs.h. */
|
| int
| main ()
| {
| #ifndef __GNUC__
| choke me
| #endif
|
| ;
| return 0;
| }
configure:4657: result: no
configure:4666: checking whether g++ accepts -g
configure:4686: g++ -c -g conftest.cpp >&5
../gcc-4.7.2/configure: line 1754: g++: command not found
configure:4686: $? = 127
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME ""
| #define PACKAGE_TARNAME ""
| #define PACKAGE_VERSION ""
| #define PACKAGE_STRING ""
| #define PACKAGE_BUGREPORT ""
| #define PACKAGE_URL ""
| /* end confdefs.h. */
|
| int
| main ()
| {
|
| ;
| return 0;
| }
configure:4701: g++ -c conftest.cpp >&5
../gcc-4.7.2/configure: line 1754: g++: command not found
configure:4701: $? = 127
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME ""
| #define PACKAGE_TARNAME ""
| #define PACKAGE_VERSION ""
| #define PACKAGE_STRING ""
| #define PACKAGE_BUGREPORT ""
| #define PACKAGE_URL ""
| /* end confdefs.h. */
|
| int
| main ()
| {
|
| ;
| return 0;
| }
configure:4717: g++ -c -g conftest.cpp >&5
../gcc-4.7.2/configure: line 1754: g++: command not found
configure:4717: $? = 127
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME ""
| #define PACKAGE_TARNAME ""
| #define PACKAGE_VERSION ""
| #define PACKAGE_STRING ""
| #define PACKAGE_BUGREPORT ""
| #define PACKAGE_URL ""
| /* end confdefs.h. */
|
| int
| main ()
| {
|
| ;
| return 0;
| }
configure:4727: result: no
configure:4816: checking for gnatbind
configure:4846: result: no
configure:4908: checking for gnatmake
configure:4938: result: no
configure:4957: checking whether compiler driver understands Ada
configure:4980: result: no
configure:4989: checking how to compare bootstrapped objects
configure:5014: result: cmp --ignore-initial=16 $$f1 $$f2
configure:5086: checking for objdir
configure:5101: result: .libs
configure:5643: checking for PWL_handle_timeout in -lpwl
configure:5668: gcc -o conftest -g -O2 conftest.c -lpwl -lstdc++ -lm >&5
/usr/bin/ld: cannot find -lpwl
collect2: ld returned 1 exit status
configure:5668: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME ""
| #define PACKAGE_TARNAME ""
| #define PACKAGE_VERSION ""
| #define PACKAGE_STRING ""
| #define PACKAGE_BUGREPORT ""
| #define PACKAGE_URL ""
| #define LT_OBJDIR ".libs/"
| /* end confdefs.h. */
|
| /* Override any GCC internal prototype to avoid an error.
| Use char because int might match the return type of a GCC
| builtin and then its argument prototype would still apply. */
| #ifdef __cplusplus
| extern "C"
| #endif
| char PWL_handle_timeout ();
| int
| main ()
| {
| return PWL_handle_timeout ();
| ;
| return 0;
| }
configure:5677: result: no
configure:5691: checking for version 0.11 (revision 0 or later) of PPL
configure:5708: gcc -c -g -O2 -I$$r/$(HOST_SUBDIR)/gmp -I$$s/gmp -I/mnt/lfs/sources/gcc-build/../gcc-4.7.2/mpfr/src -I$$s/mpc/src conftest.c >&5
conftest.c:10:19: error: ppl_c.h: No such file or directory
conftest.c: In function 'main':
conftest.c:16: error: 'choke' undeclared (first use in this function)
conftest.c:16: error: (Each undeclared identifier is reported only once
conftest.c:16: error: for each function it appears in.)
conftest.c:16: error: expected ';' before 'me'
configure:5708: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME ""
| #define PACKAGE_TARNAME ""
| #define PACKAGE_VERSION ""
| #define PACKAGE_STRING ""
| #define PACKAGE_BUGREPORT ""
| #define PACKAGE_URL ""
| #define LT_OBJDIR ".libs/"
| /* end confdefs.h. */
| #include "ppl_c.h"
| int
| main ()
| {
|
| #if PPL_VERSION_MAJOR != 0 || PPL_VERSION_MINOR < 11
| choke me
| #endif
|
| ;
| return 0;
| }
configure:5712: result: no
configure:7026: checking for default BUILD_CONFIG
configure:7058: result:
configure:7547: checking for bison
configure:7563: found /usr/bin/bison
configure:7574: result: bison -y
configure:7594: checking for bison
configure:7610: found /usr/bin/bison
configure:7621: result: bison
configure:7641: checking for gm4
configure:7671: result: no
configure:7641: checking for gnum4
configure:7671: result: no
configure:7641: checking for m4
configure:7657: found /usr/bin/m4
configure:7668: result: m4
configure:7688: checking for flex
configure:7718: result: no
configure:7688: checking for lex
configure:7718: result: no
configure:7736: checking for flex
configure:7766: result: no
configure:7783: checking for makeinfo
configure:7813: result: no
configure:7844: checking for expect
configure:7874: result: no
configure:7893: checking for runtest
configure:7923: result: no
configure:8038: checking for ar
configure:8054: found /usr/bin/ar
configure:8065: result: ar
configure:8179: checking for as
configure:8195: found /usr/bin/as
configure:8206: result: as
configure:8320: checking for dlltool
configure:8350: result: no
configure:8461: checking for ld
configure:8477: found /usr/bin/ld
configure:8488: result: ld
configure:8602: checking for lipo
configure:8632: result: no
configure:8743: checking for nm
configure:8759: found /usr/bin/nm
configure:8770: result: nm
configure:8884: checking for ranlib
configure:8900: found /usr/bin/ranlib
configure:8911: result: ranlib
configure:9020: checking for strip
configure:9036: found /usr/bin/strip
configure:9047: result: strip
configure:9156: checking for windres
configure:9186: result: no
configure:9297: checking for windmc
configure:9327: result: no
configure:9438: checking for objcopy
configure:9454: found /usr/bin/objcopy
configure:9465: result: objcopy
configure:9579: checking for objdump
configure:9595: found /usr/bin/objdump
configure:9606: result: objdump
configure:9720: checking for readelf
configure:9736: found /usr/bin/readelf
configure:9747: result: readelf
configure:9861: checking for i686-lfs-linux-gnu-cc
configure:9891: result: no
configure:9861: checking for i686-lfs-linux-gnu-gcc
configure:9891: result: no
configure:10022: checking for i686-lfs-linux-gnu-c++
configure:10052: result: no
configure:10022: checking for i686-lfs-linux-gnu-g++
configure:10052: result: no
configure:10022: checking for i686-lfs-linux-gnu-cxx
configure:10052: result: no
configure:10022: checking for i686-lfs-linux-gnu-gxx
configure:10052: result: no
configure:10183: checking for i686-lfs-linux-gnu-gcc
configure:10213: result: no
configure:10339: checking for i686-lfs-linux-gnu-gcj
configure:10369: result: no
configure:10500: checking for i686-lfs-linux-gnu-gfortran
configure:10530: result: no
configure:10661: checking for i686-lfs-linux-gnu-gccgo
configure:10691: result: no
configure:10791: checking for ar
configure:10809: found /tools/i686-lfs-linux-gnu/bin/ar
configure:10821: result: /tools/i686-lfs-linux-gnu/bin/ar
configure:11021: checking for as
configure:11039: found /tools/i686-lfs-linux-gnu/bin/as
configure:11051: result: /tools/i686-lfs-linux-gnu/bin/as
configure:11251: checking for dlltool
configure:11284: result: no
configure:11362: checking for i686-lfs-linux-gnu-dlltool
configure:11392: result: no
configure:11481: checking for ld
configure:11499: found /tools/i686-lfs-linux-gnu/bin/ld
configure:11511: result: /tools/i686-lfs-linux-gnu/bin/ld
configure:11711: checking for lipo
configure:11744: result: no
configure:11822: checking for i686-lfs-linux-gnu-lipo
configure:11852: result: no
configure:11941: checking for nm
configure:11959: found /tools/i686-lfs-linux-gnu/bin/nm
configure:11971: result: /tools/i686-lfs-linux-gnu/bin/nm
configure:12171: checking for objdump
configure:12189: found /tools/i686-lfs-linux-gnu/bin/objdump
configure:12201: result: /tools/i686-lfs-linux-gnu/bin/objdump
configure:12401: checking for ranlib
configure:12419: found /tools/i686-lfs-linux-gnu/bin/ranlib
configure:12431: result: /tools/i686-lfs-linux-gnu/bin/ranlib
configure:12631: checking for readelf
configure:12664: result: no
configure:12742: checking for i686-lfs-linux-gnu-readelf
configure:12758: found /tools/bin/i686-lfs-linux-gnu-readelf
configure:12769: result: i686-lfs-linux-gnu-readelf
configure:12861: checking for strip
configure:12879: found /tools/i686-lfs-linux-gnu/bin/strip
configure:12891: result: /tools/i686-lfs-linux-gnu/bin/strip
configure:13091: checking for windres
configure:13124: result: no
configure:13202: checking for i686-lfs-linux-gnu-windres
configure:13232: result: no
configure:13321: checking for windmc
configure:13354: result: no
configure:13432: checking for i686-lfs-linux-gnu-windmc
configure:13462: result: no
configure:13529: checking where to find the target ar
configure:13557: result: pre-installed in /tools/i686-lfs-linux-gnu/bin
configure:13571: checking where to find the target as
configure:13599: result: pre-installed in /tools/i686-lfs-linux-gnu/bin
configure:13613: checking where to find the target cc
configure:13636: result: just compiled
configure:13655: checking where to find the target c++
configure:13695: result: pre-installed
configure:13700: checking where to find the target c++ for libstdc++
configure:13740: result: pre-installed
configure:13745: checking where to find the target dlltool
configure:13782: result: pre-installed
configure:13787: checking where to find the target gcc
configure:13810: result: just compiled
configure:13829: checking where to find the target gcj
configure:13869: result: pre-installed
configure:13874: checking where to find the target gfortran
configure:13914: result: pre-installed
configure:13919: checking where to find the target gccgo
configure:13959: result: pre-installed
configure:13964: checking where to find the target ld
configure:13992: result: pre-installed in /tools/i686-lfs-linux-gnu/bin
configure:14006: checking where to find the target lipo
configure:14032: result: pre-installed
configure:14037: checking where to find the target nm
configure:14065: result: pre-installed in /tools/i686-lfs-linux-gnu/bin
configure:14079: checking where to find the target objdump
configure:14107: result: pre-installed in /tools/i686-lfs-linux-gnu/bin
configure:14121: checking where to find the target ranlib
configure:14149: result: pre-installed in /tools/i686-lfs-linux-gnu/bin
configure:14163: checking where to find the target readelf
configure:14200: result: pre-installed
configure:14205: checking where to find the target strip
configure:14233: result: pre-installed in /tools/i686-lfs-linux-gnu/bin
configure:14247: checking where to find the target windres
configure:14284: result: pre-installed
configure:14289: checking where to find the target windmc
configure:14326: result: pre-installed
configure:14359: checking whether to enable maintainer-specific portions of Makefiles
configure:14368: result: no
configure:14401: checking whether -fkeep-inline-functions is supported
configure:14420: gcc -c -g -O2 -fkeep-inline-functions conftest.c >&5
configure:14420: $? = 0
configure:14421: result: yes
configure:14627: creating ./config.status

## ---------------------- ##
## Running config.status. ##
## ---------------------- ##

This file was extended by config.status, which was
generated by GNU Autoconf 2.64. Invocation command line was

CONFIG_FILES =
CONFIG_HEADERS =
CONFIG_LINKS =
CONFIG_COMMANDS =
$ ./config.status

on lfs

config.status:964: creating Makefile

## ---------------- ##
## Cache variables. ##
## ---------------- ##

ac_cv_build=i686-pc-linux-gnu
ac_cv_c_compiler_gnu=yes
ac_cv_cxx_compiler_gnu=no
ac_cv_env_AR_FOR_TARGET_set=
ac_cv_env_AR_FOR_TARGET_value=
ac_cv_env_AR_set=
ac_cv_env_AR_value=
ac_cv_env_AS_FOR_TARGET_set=
ac_cv_env_AS_FOR_TARGET_value=
ac_cv_env_AS_set=
ac_cv_env_AS_value=
ac_cv_env_CCC_set=
ac_cv_env_CCC_value=
ac_cv_env_CC_FOR_TARGET_set=
ac_cv_env_CC_FOR_TARGET_value=
ac_cv_env_CC_set=
ac_cv_env_CC_value=
ac_cv_env_CFLAGS_set=
ac_cv_env_CFLAGS_value=
ac_cv_env_CPPFLAGS_set=
ac_cv_env_CPPFLAGS_value=
ac_cv_env_CXXFLAGS_set=
ac_cv_env_CXXFLAGS_value=
ac_cv_env_CXX_FOR_TARGET_set=
ac_cv_env_CXX_FOR_TARGET_value=
ac_cv_env_CXX_set=
ac_cv_env_CXX_value=
ac_cv_env_DLLTOOL_FOR_TARGET_set=
ac_cv_env_DLLTOOL_FOR_TARGET_value=
ac_cv_env_DLLTOOL_set=
ac_cv_env_DLLTOOL_value=
ac_cv_env_GCC_FOR_TARGET_set=
ac_cv_env_GCC_FOR_TARGET_value=
ac_cv_env_GCJ_FOR_TARGET_set=
ac_cv_env_GCJ_FOR_TARGET_value=
ac_cv_env_GFORTRAN_FOR_TARGET_set=
ac_cv_env_GFORTRAN_FOR_TARGET_value=
ac_cv_env_GOC_FOR_TARGET_set=
ac_cv_env_GOC_FOR_TARGET_value=
ac_cv_env_LDFLAGS_set=
ac_cv_env_LDFLAGS_value=
ac_cv_env_LD_FOR_TARGET_set=
ac_cv_env_LD_FOR_TARGET_value=
ac_cv_env_LD_set=
ac_cv_env_LD_value=
ac_cv_env_LIBS_set=
ac_cv_env_LIBS_value=
ac_cv_env_LIPO_FOR_TARGET_set=
ac_cv_env_LIPO_FOR_TARGET_value=
ac_cv_env_LIPO_set=
ac_cv_env_LIPO_value=
ac_cv_env_NM_FOR_TARGET_set=
ac_cv_env_NM_FOR_TARGET_value=
ac_cv_env_NM_set=
ac_cv_env_NM_value=
ac_cv_env_OBJCOPY_set=
ac_cv_env_OBJCOPY_value=
ac_cv_env_OBJDUMP_FOR_TARGET_set=
ac_cv_env_OBJDUMP_FOR_TARGET_value=
ac_cv_env_OBJDUMP_set=
ac_cv_env_OBJDUMP_value=
ac_cv_env_RANLIB_FOR_TARGET_set=
ac_cv_env_RANLIB_FOR_TARGET_value=
ac_cv_env_RANLIB_set=
ac_cv_env_RANLIB_value=
ac_cv_env_READELF_FOR_TARGET_set=
ac_cv_env_READELF_FOR_TARGET_value=
ac_cv_env_READELF_set=
ac_cv_env_READELF_value=
ac_cv_env_STRIP_FOR_TARGET_set=
ac_cv_env_STRIP_FOR_TARGET_value=
ac_cv_env_STRIP_set=
ac_cv_env_STRIP_value=
ac_cv_env_WINDMC_FOR_TARGET_set=
ac_cv_env_WINDMC_FOR_TARGET_value=
ac_cv_env_WINDMC_set=
ac_cv_env_WINDMC_value=
ac_cv_env_WINDRES_FOR_TARGET_set=
ac_cv_env_WINDRES_FOR_TARGET_value=
ac_cv_env_WINDRES_set=
ac_cv_env_WINDRES_value=
ac_cv_env_build_alias_set=
ac_cv_env_build_alias_value=
ac_cv_env_build_configargs_set=
ac_cv_env_build_configargs_value=
ac_cv_env_host_alias_set=
ac_cv_env_host_alias_value=
ac_cv_env_host_configargs_set=
ac_cv_env_host_configargs_value=
ac_cv_env_target_alias_set=set
ac_cv_env_target_alias_value=i686-lfs-linux-gnu
ac_cv_env_target_configargs_set=
ac_cv_env_target_configargs_value=
ac_cv_host=i686-pc-linux-gnu
ac_cv_lib_pwl_PWL_handle_timeout=no
ac_cv_objext=o
ac_cv_path_AR_FOR_TARGET=/tools/i686-lfs-linux-gnu/bin/ar
ac_cv_path_AS_FOR_TARGET=/tools/i686-lfs-linux-gnu/bin/as
ac_cv_path_LD_FOR_TARGET=/tools/i686-lfs-linux-gnu/bin/ld
ac_cv_path_NM_FOR_TARGET=/tools/i686-lfs-linux-gnu/bin/nm
ac_cv_path_OBJDUMP_FOR_TARGET=/tools/i686-lfs-linux-gnu/bin/objdump
ac_cv_path_RANLIB_FOR_TARGET=/tools/i686-lfs-linux-gnu/bin/ranlib
ac_cv_path_SED=/bin/sed
ac_cv_path_STRIP_FOR_TARGET=/tools/i686-lfs-linux-gnu/bin/strip
ac_cv_path_install='/usr/bin/install -c'
ac_cv_prog_AR=ar
ac_cv_prog_AS=as
ac_cv_prog_AWK=gawk
ac_cv_prog_BISON=bison
ac_cv_prog_LD=ld
ac_cv_prog_M4=m4
ac_cv_prog_NM=nm
ac_cv_prog_OBJCOPY=objcopy
ac_cv_prog_OBJDUMP=objdump
ac_cv_prog_RANLIB=ranlib
ac_cv_prog_READELF=readelf
ac_cv_prog_READELF_FOR_TARGET=i686-lfs-linux-gnu-readelf
ac_cv_prog_STRIP=strip
ac_cv_prog_YACC='bison -y'
ac_cv_prog_ac_ct_CC=gcc
ac_cv_prog_cc_c89=
ac_cv_prog_cc_g=yes
ac_cv_prog_cxx_g=no
ac_cv_target=i686-lfs-linux-gnu
acx_cv_cc_gcc_supports_ada=no
acx_cv_prog_LN=ln
gcc_cv_prog_cmp_skip='cmp --ignore-initial=16 $$f1 $$f2'
gcc_cv_tool_dirs=/tools/libexec/gcc/i686-lfs-linux-gnu/4.7.2:/tools/libexec/gcc/i686-lfs-linux-gnu:/usr/lib/gcc/i686-lfs-linux-gnu/4.7.2:/usr/lib/gcc/i686-lfs-linux-gnu:/tools/i686-lfs-linux-gnu/bin/i686-lfs-linux-gnu/4.7.2:/tools/i686-lfs-linux-gnu/bin:
gcc_cv_tool_prefix=/tools
lt_cv_objdir=.libs

## ----------------- ##
## Output variables. ##
## ----------------- ##

AR='ar'
AR_FOR_BUILD='$(AR)'
AR_FOR_TARGET='/tools/i686-lfs-linux-gnu/bin/ar'
AS='as'
AS_FOR_BUILD='$(AS)'
AS_FOR_TARGET='/tools/i686-lfs-linux-gnu/bin/as'
AWK='gawk'
BISON='bison'
BUILD_CONFIG=''
CC='gcc'
CC_FOR_BUILD='$(CC)'
CC_FOR_TARGET='$$r/$(HOST_SUBDIR)/gcc/xgcc -B$$r/$(HOST_SUBDIR)/gcc/'
CFLAGS='-g -O2'
CFLAGS_FOR_BUILD='-g -O2'
CFLAGS_FOR_TARGET='-g -O2'
COMPILER_AS_FOR_TARGET='$$r/$(HOST_SUBDIR)/gcc/as'
COMPILER_LD_FOR_TARGET='$$r/$(HOST_SUBDIR)/gcc/collect-ld'
COMPILER_NM_FOR_TARGET='$$r/$(HOST_SUBDIR)/gcc/nm'
CONFIGURE_GDB_TK=''
CPPFLAGS=''
CXX='g++'
CXXFLAGS=''
CXXFLAGS_FOR_BUILD=''
CXXFLAGS_FOR_TARGET='-g '
CXX_FOR_BUILD='$(CXX)'
CXX_FOR_TARGET='i686-lfs-linux-gnu-c++'
DEBUG_PREFIX_CFLAGS_FOR_TARGET=''
DEFS='-DPACKAGE_NAME=\"\" -DPACKAGE_TARNAME=\"\" -DPACKAGE_VERSION=\"\" -DPACKAGE_STRING=\"\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DLT_OBJDIR=\".libs/\"'
DLLTOOL='dlltool'
DLLTOOL_FOR_BUILD='$(DLLTOOL)'
DLLTOOL_FOR_TARGET='i686-lfs-linux-gnu-dlltool'
ECHO_C=''
ECHO_N='-n'
ECHO_T=''
EXEEXT=''
EXPECT='expect'
EXTRA_CONFIGARGS_LIBJAVA='--disable-static'
FLAGS_FOR_TARGET=' -B$(build_tooldir)/bin/ -B$(build_tooldir)/lib/ -isystem $(build_tooldir)/include -isystem $(build_tooldir)/sys-include'
FLEX='/mnt/lfs/sources/gcc-4.7.2/missing flex'
GCC_FOR_TARGET='$$r/$(HOST_SUBDIR)/gcc/xgcc -B$$r/$(HOST_SUBDIR)/gcc/'
GCC_SHLIB_SUBDIR=''
GCJ_FOR_BUILD='$(GCJ)'
GCJ_FOR_TARGET='i686-lfs-linux-gnu-gcj'
GDB_TK=''
GFORTRAN_FOR_BUILD='$(GFORTRAN)'
GFORTRAN_FOR_TARGET='i686-lfs-linux-gnu-gfortran'
GNATBIND='no'
GNATMAKE='no'
GOC_FOR_BUILD='$(GOC)'
GOC_FOR_TARGET='i686-lfs-linux-gnu-gccgo'
INSTALL_DATA='${INSTALL} -m 644'
INSTALL_GDB_TK=''
INSTALL_PROGRAM='${INSTALL}'
INSTALL_SCRIPT='${INSTALL}'
LD='ld'
LDFLAGS=''
LDFLAGS_FOR_BUILD=''
LDFLAGS_FOR_TARGET=''
LD_FOR_BUILD='$(LD)'
LD_FOR_TARGET='/tools/i686-lfs-linux-gnu/bin/ld'
LEX='/mnt/lfs/sources/gcc-4.7.2/missing flex'
LIBOBJS=''
LIBS=''
LIPO='lipo'
LIPO_FOR_TARGET='i686-lfs-linux-gnu-lipo'
LN='ln'
LN_S='ln -s'
LTLIBOBJS=''
M4='m4'
MAINT='#'
MAINTAINER_MODE_FALSE=''
MAINTAINER_MODE_TRUE='#'
MAKEINFO='/mnt/lfs/sources/gcc-4.7.2/missing makeinfo'
NM='nm'
NM_FOR_BUILD='$(NM)'
NM_FOR_TARGET='/tools/i686-lfs-linux-gnu/bin/nm'
OBJCOPY='objcopy'
OBJDUMP='objdump'
OBJDUMP_FOR_TARGET='/tools/i686-lfs-linux-gnu/bin/objdump'
OBJEXT='o'
PACKAGE_BUGREPORT=''
PACKAGE_NAME=''
PACKAGE_STRING=''
PACKAGE_TARNAME=''
PACKAGE_URL=''
PACKAGE_VERSION=''
PATH_SEPARATOR=':'
POSTSTAGE1_CONFIGURE_FLAGS='--enable-build-with-cxx'
RANLIB='ranlib'
RANLIB_FOR_BUILD='$(RANLIB)'
RANLIB_FOR_TARGET='/tools/i686-lfs-linux-gnu/bin/ranlib'
RAW_CXX_FOR_TARGET='i686-lfs-linux-gnu-c++'
READELF='readelf'
READELF_FOR_TARGET='i686-lfs-linux-gnu-readelf'
RPATH_ENVVAR='LD_LIBRARY_PATH'
RUNTEST='runtest'
SED='/bin/sed'
SHELL='/bin/sh'
STRIP='strip'
STRIP_FOR_TARGET='/tools/i686-lfs-linux-gnu/bin/strip'
SYSROOT_CFLAGS_FOR_TARGET=''
TOPLEVEL_CONFIGURE_ARGUMENTS='../gcc-4.7.2/configure --target=i686-lfs-linux-gnu --prefix=/tools --with-sysroot=/mnt/lfs --with-newlib --without-headers --with-local-prefix=/tools --with-native-system-header-dir=/tools/include --disable-nls --disable-shared --disable-multilib --disable-decimal-float --disable-threads --disable-libmudflap --disable-libssp --disable-libgomp --disable-libquadmath --enable-languages=c --with-mpfr-include=/mnt/lfs/sources/gcc-build/../gcc-4.7.2/mpfr/src --with-mpfr-lib=/mnt/lfs/sources/gcc-build/mpfr/src/.libs'
WINDMC='windmc'
WINDMC_FOR_BUILD='$(WINDMC)'
WINDMC_FOR_TARGET='i686-lfs-linux-gnu-windmc'
WINDRES='windres'
WINDRES_FOR_BUILD='$(WINDRES)'
WINDRES_FOR_TARGET='i686-lfs-linux-gnu-windres'
YACC='bison -y'
ac_ct_CC='gcc'
ac_ct_CXX=''
bindir='${exec_prefix}/bin'
build='i686-pc-linux-gnu'
build_alias=''
build_configargs=' --cache-file=../config.cache '\''--prefix=/tools'\'' '\''--with-sysroot=/mnt/lfs'\'' '\''--with-newlib'\'' '\''--without-headers'\'' '\''--with-local-prefix=/tools'\'' '\''--with-native-system-header-dir=/tools/include'\'' '\''--disable-nls'\'' '\''--disable-shared'\'' '\''--disable-multilib'\'' '\''--disable-decimal-float'\'' '\''--disable-threads'\'' '\''--disable-libmudflap'\'' '\''--disable-libssp'\'' '\''--disable-libgomp'\'' '\''--disable-libquadmath'\'' '\''--with-mpfr-include=/mnt/lfs/sources/gcc-build/../gcc-4.7.2/mpfr/src'\'' '\''--with-mpfr-lib=/mnt/lfs/sources/gcc-build/mpfr/src/.libs'\'' '\''--enable-languages=c,lto'\'' --program-transform-name='\''s&^&i686-lfs-linux-gnu-&'\'' --disable-option-checking'
build_configdirs=' libiberty fixincludes'
build_cpu='i686'
build_libsubdir='build-i686-pc-linux-gnu'
build_noncanonical='i686-pc-linux-gnu'
build_os='linux-gnu'
build_subdir='build-i686-pc-linux-gnu'
build_tooldir='${exec_prefix}/i686-lfs-linux-gnu'
build_vendor='pc'
clooginc=''
clooglibs=''
compare_exclusions='gcc/cc*-checksum$(objext) | gcc/ada/*tools/*'
configdirs=' intl libiberty zlib libcpp libdecnumber gmp mpfr mpc fixincludes gcc lto-plugin'
datadir='${datarootdir}'
datarootdir='${prefix}/share'
do_compare='cmp --ignore-initial=16 $$f1 $$f2'
docdir='${datarootdir}/doc/${PACKAGE}'
dvidir='${docdir}'
exec_prefix='${prefix}'
extra_host_libiberty_configure_flags='--enable-shared'
extra_mpc_gmp_configure_flags='--with-gmp-include=$$r/$(HOST_SUBDIR)/gmp --with-gmp-lib=$$r/$(HOST_SUBDIR)/gmp/.libs'
extra_mpc_mpfr_configure_flags=''
extra_mpfr_configure_flags='--with-gmp-include=$$r/$(HOST_SUBDIR)/gmp --with-gmp-lib=$$r/$(HOST_SUBDIR)/gmp/.libs'
gmpinc='-I$$r/$(HOST_SUBDIR)/gmp -I$$s/gmp -I/mnt/lfs/sources/gcc-build/../gcc-4.7.2/mpfr/src -I$$s/mpc/src '
gmplibs='-L$$r/$(HOST_SUBDIR)/gmp/.libs -L/mnt/lfs/sources/gcc-build/mpfr/src/.libs -L$$r/$(HOST_SUBDIR)/mpc/src/.libs -lmpc -lmpfr -lgmp'
host='i686-pc-linux-gnu'
host_alias=''
host_configargs=' --cache-file=./config.cache '\''--prefix=/tools'\'' '\''--with-sysroot=/mnt/lfs'\'' '\''--with-newlib'\'' '\''--without-headers'\'' '\''--with-local-prefix=/tools'\'' '\''--with-native-system-header-dir=/tools/include'\'' '\''--disable-nls'\'' '\''--disable-shared'\'' '\''--disable-multilib'\'' '\''--disable-decimal-float'\'' '\''--disable-threads'\'' '\''--disable-libmudflap'\'' '\''--disable-libssp'\'' '\''--disable-libgomp'\'' '\''--disable-libquadmath'\'' '\''--with-mpfr-include=/mnt/lfs/sources/gcc-build/../gcc-4.7.2/mpfr/src'\'' '\''--with-mpfr-lib=/mnt/lfs/sources/gcc-build/mpfr/src/.libs'\'' '\''--enable-languages=c,lto'\'' --program-transform-name='\''s&^&i686-lfs-linux-gnu-&'\'' --disable-option-checking'
host_cpu='i686'
host_noncanonical='i686-pc-linux-gnu'
host_os='linux-gnu'
host_subdir='.'
host_vendor='pc'
htmldir='${docdir}'
includedir='${prefix}/include'
infodir='${datarootdir}/info'
libdir='${exec_prefix}/lib'
libexecdir='${exec_prefix}/libexec'
localedir='${datarootdir}/locale'
localstatedir='${prefix}/var'
mandir='${datarootdir}/man'
oldincludedir='/usr/include'
pdfdir='${docdir}'
poststage1_ldflags='-static-libstdc++ -static-libgcc'
poststage1_libs=''
pplinc=''
ppllibs=''
prefix='/tools'
program_transform_name='s&^&i686-lfs-linux-gnu-&'
psdir='${docdir}'
sbindir='${exec_prefix}/sbin'
sharedstatedir='${prefix}/com'
stage1_cflags='-g -fkeep-inline-functions'
stage1_checking='--enable-checking=yes,types'
stage1_languages='c,lto'
stage1_ldflags=''
stage1_libs=''
stage2_werror_flag=''
sysconfdir='${prefix}/etc'
target='i686-lfs-linux-gnu'
target_alias='i686-lfs-linux-gnu'
target_configargs='--cache-file=./config.cache --with-cross-host=i686-pc-linux-gnu '\''--prefix=/tools'\'' '\''--with-sysroot=/mnt/lfs'\'' '\''--with-newlib'\'' '\''--without-headers'\'' '\''--with-local-prefix=/tools'\'' '\''--with-native-system-header-dir=/tools/include'\'' '\''--disable-nls'\'' '\''--disable-shared'\'' '\''--disable-multilib'\'' '\''--disable-decimal-float'\'' '\''--disable-threads'\'' '\''--disable-libmudflap'\'' '\''--disable-libssp'\'' '\''--disable-libgomp'\'' '\''--disable-libquadmath'\'' '\''--enable-languages=c,lto'\'' --program-transform-name='\''s&^&i686-lfs-linux-gnu-&'\'' --disable-option-checking'
target_configdirs=' libgcc'
target_cpu='i686'
target_noncanonical='i686-lfs-linux-gnu'
target_os='linux-gnu'
target_subdir='i686-lfs-linux-gnu'
target_vendor='lfs'
tooldir='${exec_prefix}/i686-lfs-linux-gnu'

## ------------------- ##
## File substitutions. ##
## ------------------- ##

alphaieee_frag='/dev/null'
host_makefile_frag='/dev/null'
ospace_frag='/dev/null'
serialization_dependencies='serdep.tmp'
target_makefile_frag='../gcc-4.7.2/config/mt-gnu'

## ----------- ##
## confdefs.h. ##
## ----------- ##

/* confdefs.h */
#define PACKAGE_NAME ""
#define PACKAGE_TARNAME ""
#define PACKAGE_VERSION ""
#define PACKAGE_STRING ""
#define PACKAGE_BUGREPORT ""
#define PACKAGE_URL ""
#define LT_OBJDIR ".libs/"

configure: exit 0



・次にmakeとmake installを実行。

make
make install



・LFS BOOK7.3 p37の最後には以下コマンドが書いてあるが、/mnt/lfs/sources/gcc-buildの下には
 libgcc.aが存在しない。おそらくlibgcc.aが存在する/mnt/lfs/sources/gcc-build/gccに移動してから
 実行するものと予想し、そうした。

ln -sv libgcc.a `$LFS_TGT-gcc -print-libgcc-file-name | sed 's/libgcc/&_eh/'`



■5.6. Linux-3.8.1 API ヘッダー
・標準のビルド手順に従い、まずは/mnt/lfs/sourcesへ移動し、対象パッケージを展開。

tar -Jxf linux-3.8.1.tar.xz



・展開したディレクトリ/mnt/lfs/sources/linux-3.8.1 へ移動して以下実行。

make mrproper


・次に、make headers_check を実行。

# make headers_check
CHK include/generated/uapi/linux/version.h
UPD include/generated/uapi/linux/version.h
HOSTCC scripts/basic/fixdep
WRAP arch/x86/include/generated/asm/clkdev.h
SYSHDR arch/x86/syscalls/../include/generated/uapi/asm/unistd_32.h
SYSHDR arch/x86/syscalls/../include/generated/uapi/asm/unistd_64.h
SYSHDR arch/x86/syscalls/../include/generated/uapi/asm/unistd_x32.h
SYSTBL arch/x86/syscalls/../include/generated/asm/syscalls_32.h
HOSTCC arch/x86/tools/relocs
HOSTCC scripts/unifdef
INSTALL include/asm-generic (35 files)
INSTALL include/drm (15 files)
INSTALL include/linux/byteorder (2 files)
INSTALL include/linux/caif (2 files)
INSTALL include/linux/can (5 files)
INSTALL include/linux/dvb (8 files)
INSTALL include/linux/hdlc (1 file)
INSTALL include/linux/hsi (1 file)
INSTALL include/linux/isdn (1 file)
INSTALL include/linux/mmc (1 file)
INSTALL include/linux/netfilter/ipset (4 files)
INSTALL include/linux/netfilter (76 files)
INSTALL include/linux/netfilter_arp (2 files)
INSTALL include/linux/netfilter_bridge (18 files)
INSTALL include/linux/netfilter_ipv4 (10 files)
INSTALL include/linux/netfilter_ipv6 (12 files)
INSTALL include/linux/nfsd (5 files)
INSTALL include/linux/raid (2 files)
INSTALL include/linux/spi (1 file)
INSTALL include/linux/sunrpc (1 file)
INSTALL include/linux/tc_act (7 files)
INSTALL include/linux/tc_ematch (4 files)
INSTALL include/linux/usb (10 files)
INSTALL include/linux/wimax (1 file)
INSTALL include/linux (381 files)
   :
   :



・次は以下実行。

make INSTALL_HDR_PATH=dest headers_install


・次はこれ。

cp -rv dest/include/* /tools/include



■5.7. Glibc-2.17
・/mnt/lfs/sources で以下実行。

tar -Jxf glibc-2.17.tar.xz



・次の理由で後述のコマンドを実行すると。ちなみに「#!/bin/bash」は自分で判断し追加。

例えば LFS 7.1 などにおいて、rpc ヘッダーが適切にインストールされていない場合がある。
ホストシステムにそれらがインストールされているかを確認し、なければそれらをインストールする。

#!/bin/bash

if [ ! -r /usr/include/rpc/types.h ]; then
su -c 'mkdir -p /usr/include/rpc'
su -c 'cp -v sunrpc/rpc/*.h /usr/include/rpc'
fi


・ビルド用にまたDIR作って移動。

mkdir -v ../glibc-build
cd ../glibc-build


・コンパイル準備のため以下コマンド実行。

#!/bin/bash

../glibc-2.17/configure \
--prefix=/tools \
--host=$LFS_TGT \
--build=$(../glibc-2.17/scripts/config.guess) \
--disable-profile \
--enable-kernel=2.6.25 \
--with-headers=/tools/include \
libc_cv_forced_unwind=yes \
libc_cv_ctors_header=yes \
libc_cv_c_cleanup=yes



・config.logに以下MSG。

configure:5407: WARNING:
*** These auxiliary programs are missing or incompatible versions: msgfmt makeinfo autoconf
*** some features will be disabled.
*** Check the INSTALL file for required versions.


 これはLFS BOOK7.3 p40にも説明あるように問題無いとの事。

msgfmt プログラムがない場合 (missing) や互換性がない場合 (incompatible) でも特に問題はありません。
msgfmtプログラムは Gettext パッケージが提供するもので、ホストシステムに含まれているかもしれません。


・makeする。

make
make install


・ここで注意書きがあって、以下を必ず実行すると。理由は以下。

新しいツールチェーンの基本的な機能 (コンパイルやリンク) が正常に
処理されるかどうかを確認することです。


echo 'main(){}' > dummy.c
$LFS_TGT-gcc dummy.c
readelf -l a.out | grep ': /tools'


・上のコマンドを実行すると、次の結果だった。

bash-4.1$ readelf -l a.out | grep ': /tools'
[Requesting program interpreter: /tools/lib/ld-linux.so.2]


 これは、p40の以下説明書きにも一致。問題無しだ。

すべてが正常に処理され、エラーが発生しなければ、最終のコマンドの実行結果として以下が
出力されるはずです。
[Requesting program interpreter: /tools/lib/ld-linux.so.2]
ダイナミックリンカーのプリフィックスは /tools/lib、あるいは 64 ビットマシンであれば
/tools/lib64 となります。



■5.8. Binutils-2.23.1 - 2回め
・前回展開してるから/mnt/lfs/sources/binutils-2.23.1 が既に存在する。
 以下から実行と思ったが、binutils-buildも存在する。作成せずに移動。

mkdir -v ../binutils-build
cd ../binutils-build



・make 実行したら、以下のエラー。

  :
  :
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking for style of include used by make... GNU
configure: error: source directory already configured; run "make distclean" there first
make[1]: *** [configure-bfd] Error 1
make[1]: Leaving directory `/mnt/lfs/sources/binutils-build'
make: *** [all] Error 2



(2013/10/2追記)
・LFS BOOK7.3 p42をよくよく見ると、DIR移動してからmakeする前に、
 コンパイル準備とかいう作業が書いてある。以下実行。

#!/bin/bash

CC=$LFS_TGT-gcc \
AR=$LFS_TGT-ar \
RANLIB=$LFS_TGT-ranlib \
../binutils-2.23.1/configure \
--prefix=/tools \
--disable-nls \
--with-lib-path=/tools/lib



・makeやり直しても、同じエラーだった。

configure: error: source directory already configured; run "make distclean" there first
make[1]: *** [configure-bfd] Error 1
make[1]: Leaving directory `/mnt/lfs/sources/binutils-build'
make: *** [all] Error 2



・メッセージに出てるように「make distclean」を実行してみた。
 メモるのを忘れたが、エラーっぽいメッセージが。

・その後、Makefileが消されたので、再度、makeの前にやったコンパイル準備の
 コマンドを実行してから、makeを実行した。でもやっぱりエラーが。

  :
  :
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking for style of include used by make... GNU
configure: error: source directory already configured; run "make distclean" there first
make[1]: *** [configure-bfd] Error 1
make[1]: Leaving directory `/mnt/lfs/sources/binutils-build'
make: *** [all] Error 2



・makeを飛ばして、make installを実行してみたが、以下のエラーが。

bash-4.1$ make install
make[1]: Entering directory `/mnt/lfs/sources/binutils-build'
/bin/sh ../binutils-2.23.1/mkinstalldirs /tools /tools
make[2]: Entering directory `/mnt/lfs/sources/binutils-build/bfd'
make[2]: *** No rule to make target `install'. Stop.
make[2]: Leaving directory `/mnt/lfs/sources/binutils-build/bfd'
make[1]: *** [install-bfd] Error 2
make[1]: Leaving directory `/mnt/lfs/sources/binutils-build'
make: *** [install] Error 2



 メッセージ見ると、ログの3行目に /mnt/lfs/sources/binutils-build/bfd に移動してから
 「No rule to make target `install'. Stop.」と言っている。
  /mnt/lfs/sources/binutils-build/bfd をのぞいてみると、config.log が存在。
 中をチェックしてみると、66行目や71行目でerrorがある。さらに121行目では、
 make distcleanをやれと言ってる。

    :
    :
62 Thread model: single
63 gcc version 4.7.2 (GCC)
64 configure:2992: $? = 0
65 configure:2981: i686-lfs-linux-gnu-gcc -V >&5
66 i686-lfs-linux-gnu-gcc: error: unrecognized command line option '-V'
67 i686-lfs-linux-gnu-gcc: fatal error: no input files
68 compilation terminated.
69 configure:2992: $? = 1
70 configure:2981: i686-lfs-linux-gnu-gcc -qversion >&5
71 i686-lfs-linux-gnu-gcc: error: unrecognized command line option '-qversion'
72 i686-lfs-linux-gnu-gcc: fatal error: no input files
73 compilation terminated.
74 configure:2992: $? = 1
    :
119 configure:3919: checking for style of include used by make
120 configure:3947: result: GNU
121 configure:3975: error: source directory already configured; run "make distclean" there first

スポンサーサイト



カレンダー
08 | 2013/09 | 10
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 - - - - -
累積訪問者
現在の訪問者
現在の閲覧者数:
最新記事
最新トラックバック
最新コメント
月別アーカイブ
カテゴリ
プロフィール

bobgosso

Author:bobgosso
FPGAのブログへようこそ!

検索フォーム
RSSリンクの表示
リンク
ブロとも申請フォーム

この人とブロともになる

QRコード
QRコード