zlib-1.2.3.tar.gz の インストール

前へ| 次へ

install part 01

以下の方法は お薦めしません このような事をする 猫 もいるようです とい うことだけです。

./configure --shared --prefix=/usr/local

これらは LFS を 参考にしました、参考です同じでは有りません。良い子は まねしては いけません。(まねきねこ)

configure

へたら

# ./configure --shared --prefix=/usr/local 2>&1 |tee log-conf-share-usr-local
Checking for gcc...
Checking for shared library support...
Building shared library libz.so.1.2.3 with gcc.
Checking for unistd.h... Yes.
Checking whether to use vs[n]printf() or s[n]printf()... using vs[n]printf()
Checking for vsnprintf() in stdio.h... Yes.
Checking for return value of vsnprintf()... Yes.
Checking for errno.h... Yes.
Checking for mmap support... Yes.

make

ほんでもって

# make 2>&1 | tee log_make
gcc -fPIC -O3 -DUSE_MMAP   -c -o example.o example.c
gcc -fPIC -O3 -DUSE_MMAP   -c -o adler32.o adler32.c
gcc -fPIC -O3 -DUSE_MMAP   -c -o compress.o compress.c
gcc -fPIC -O3 -DUSE_MMAP   -c -o crc32.o crc32.c
gcc -fPIC -O3 -DUSE_MMAP   -c -o gzio.o gzio.c
gcc -fPIC -O3 -DUSE_MMAP   -c -o uncompr.o uncompr.c
gcc -fPIC -O3 -DUSE_MMAP   -c -o deflate.o deflate.c
gcc -fPIC -O3 -DUSE_MMAP   -c -o trees.o trees.c
gcc -fPIC -O3 -DUSE_MMAP   -c -o zutil.o zutil.c
gcc -fPIC -O3 -DUSE_MMAP   -c -o inflate.o inflate.c
gcc -fPIC -O3 -DUSE_MMAP   -c -o infback.o infback.c
gcc -fPIC -O3 -DUSE_MMAP   -c -o inftrees.o inftrees.c
gcc -fPIC -O3 -DUSE_MMAP   -c -o inffast.o inffast.c
gcc -shared -Wl,-soname,libz.so.1 -o libz.so.1.2.3 adler32.o compress.o crc32.o 
gzio.o uncompr.o deflate.o trees.o zutil.o inflate.o infback.o inftrees.o inffas
t.o
rm -f libz.so libz.so.1
ln -s libz.so.1.2.3 libz.so
ln -s libz.so.1.2.3 libz.so.1
gcc -fPIC -O3 -DUSE_MMAP -o example example.o -L. libz.so.1.2.3
gcc -fPIC -O3 -DUSE_MMAP   -c -o minigzip.o minigzip.c
gcc -fPIC -O3 -DUSE_MMAP -o minigzip minigzip.o -L. libz.so.1.2.3

準備

網を仕掛けます。

# touch /tmp/20081107mark ; sleep 1

make install

そんでもって

# make install 2>&1 | tee log_install 
cp zlib.h zconf.h /usr/local/include
chmod 644 /usr/local/include/zlib.h /usr/local/include/zconf.h
cp libz.so.1.2.3 /usr/local/lib
cd /usr/local/lib; chmod 755 libz.so.1.2.3
cd /usr/local/lib; if test -f libz.so.1.2.3; then \
  rm -f libz.so libz.so.1; \
  ln -s libz.so.1.2.3 libz.so; \
  ln -s libz.so.1.2.3 libz.so.1; \
  (ldconfig || true)  >/dev/null 2>&1; \
fi
cp zlib.3 /usr/local/share/man/man3
chmod 644 /usr/local/share/man/man3/zlib.3

お魚を 手繰り寄せます。

えんや とっとえんや とっと 本当は もっと 絞りこめるようですが 個猫 は 吝嗇なので 小魚 一匹 逃しません ”/proc ”さえ 手にしようとします。 笑えよ!

# find / -cnewer /tmp/20081107mark ! -type d -print >/tmp/colectionfileall
find: /proc/1551/fd/4: No such file or directory

獲物の 確認

大漁かな!

# cp /tmp/colectionfileall .
# wc -l colectionfileall 
   1936 colectionfileall
# sed -e '/^\/proc/d' colectionfileall >qqqqq
# wc -l qqqqq 
     11 qqqqq
# mv qqqqq colectionfileall 
# vi colectionfileall 
# cat colectionfileall
/usr/local/lib/libz.so.1.2.3
/usr/local/lib/libz.so
/usr/local/lib/libz.so.1
/usr/local/include/zlib.h
/usr/local/include/zconf.h
/usr/local/share/man/man3/zlib.3

ううーーんん これだけ?

/usr/lib/libz.a

”/usr/lib/libz.a”というものが 既に インストールされているものには 存在 するのですが 今回は 逃したようです なんでか?

tgz

考えても わからないのですから とりあえず 固めておきます。

# pwd
/usr/local/src/105_zlib-1-2-3/zlib-1.2.3
# cd ../
# mkdir tgz-first
# cd tgz-first/
# mv ../zlib-1.2.3/colectionfileall .
# ls -l
total 4
-rw-r--r--    1 root     root          163 Nov  7 23:02 colectionfileall
# tar -T colectionfileall -cvzf zlib-1.2.3.tgz 2>&1 | tee log_gather
tar: Member names contain `..'
tar: Removing leading `/' from member names
usr/local/lib/libz.so.1.2.3
usr/local/lib/libz.so
usr/local/lib/libz.so.1
usr/local/include/zlib.h
usr/local/include/zconf.h
usr/local/share/man/man3/zlib.3
# ls -l | sed 1d
-rw-r--r--    1 root     root          163 Nov  7 23:02 colectionfileall
-rw-r--r--    1 root     root          232 Nov  7 23:26 log_gather
-rw-r--r--    1 root     root        66746 Nov  7 23:26 zlib-1.2.3.tgz

まあ なにか出来たようです。それにしても ”libz.a” は 何処?

にゃんたろう 拝!

2008年11月 8日 (土) 22:04:07 JST 作成


前へ| 次へ

zlib-1.2.3.tar.gz の インストール

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