戻る

前へ| 次へ

coreutils-5.2.1 の ビルド

”coreutils-5.2.1.tar.bz2” を ビルドしてゆきます。まず 場所を設定

# pwd           
/home/qpo/proj/staging
# mkdir ../1003_Some_Basic_Utilities
# cd ../1003_Some_Basic_Utilities/
# pwd
/home/qpo/proj/1003_Some_Basic_Utilities
# ls -a
./  ../

ソースを入手 展開ビルド

configure

# cp ../../dokoka/hozonnsaki/coreutils-5.2.1.tar.bz2 .
# ls
coreutils-5.2.1.tar.bz2
# tar jxvf coreutils-5.2.1.tar.bz2
# cd coreutils-5.2.1
# export CC="gcc -mcpu=i386"
# { time ./configure --host=i386-pc-linux-gnu 2>&1 | tee log-configure ;}
...
config.status: creating po/Makefile

real    4m16.114s
user    3m7.450s
sys     1m0.770s

make

# { time make 2>&1 | tee log-make ; }
...
make[1]: Leaving directory `/home/qpo/proj/1003_Some_Basic_Utilities/coreutils-5.2.1'

real    5m18.327s
user    4m52.540s
sys     0m17.880s

coreutils で作成されたファイルのコピー

ファイルの 構成を 見る

作成されたものを 見ておきます

ファイルは src と言う所に有るので

# pwd
/home/qpo/proj/build-tools/coreutils-5.2.1
# ls src/

少なくとも これらが存在しています。他にも有るのですが

cat chgrp chmod chown cp date dd df
hostname ln ls mkdir mkfifo mknod
mv rm rmdir stty su sync uname 

ファイルのコピー

ファイルをコピーします。

# cd src/
# pwd
/home/qpo/proj/1003_Some_Basic_Utilities/coreutils-5.2.1/src
# ls ../../../staging/bin
bash*  sh@
# cp cat chgrp chmod chown cp date dd df ../../../staging/bin/
# cp hostname ln ls mkdir mkfifo mknod ../../../staging/bin/
# cp mv rm rmdir stty su sync uname ../../../staging/bin/
# ls ../../../staging/bin
bash*   chmod*  date*  hostname*  mkdir*   mv*     sh@    sync*
cat*    chown*  dd*    ln*        mkfifo*  rm*     stty*  uname*
chgrp*  cp*     df*    ls*        mknod*   rmdir*  su*

当然これだけでは 動きません。

ldd

ldd で 必要なライブラリを 調査する事が 必要です

# cd ../../../staging/
# pwd
/home/qpo/proj/staging
# ls
bin/   dev/  home/  mnt/  proc/  sbin/  usr/
boot/  etc/  lib/   opt/  root/  tmp/   var/
# ldd bin/cat
        libc.so.6 => /lib/libc.so.6 (0x4001e000)
        /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
.,.
# ldd bin/ls
        librt.so.1 => /lib/librt.so.1 (0x4001e000)
        libc.so.6 => /lib/libc.so.6 (0x40030000)
        libpthread.so.0 => /lib/libpthread.so.0 (0x40149000)
        /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
# ldd bin/su  
        libcrypt.so.1 => /lib/libcrypt.so.1 (0x4001e000)
        libc.so.6 => /lib/libc.so.6 (0x4004a000)
        /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
# ls lib/
ld-linux.so.2*  libc.so.6  libdl.so.2

必要なライブラリのコピー

では調べた結果を元に /lib ディレクトリにコピーします。

# pwd
/home/qpo/proj/staging
# cp /lib/librt.so.1 lib/
# cp /lib/libpthread.so.0 lib/
# cp /lib/libcrypt.so.1 lib/
# ls lib/
ld-linux.so.2*  libcrypt.so.1*  libpthread.so.0*
libc.so.6       libdl.so.2      librt.so.1*

後もう少しです。

にゃんたろう 拝!

2010年 8月23日 (月) 21:15:16 JST 作成


前へ| 次へ

戻る

Copyright © 2006.-2010. nyantarou All Rights Reserved.