次へ|戻る

php-5.1.2.tar.gz

Out line

php に ついて 理解しているわけでは 無い 状態 とにかく 始めてみよう と いう段階 です。

php-5.1.2.tar.gz

php-5.1.2.tar.gz と md5 を ここから 入手 ありがとうございます!

http://www.php.net/downloads.php
http://jp.php.net/get/php-5.1.2.tar.gz/from/a/mirror
PHP 5.1.2 (tar.gz) [7,875Kb] - 12 Jan 2006
md5: b5b6564e8c6a0d5bc1d2b4787480d792

準備 その1

# cd /var/data/mkpackage/
# mkdir php-5-1-2
# cd php-5-1-2/
# cp /home/mm/dwlord/php-5.1.2.tar.gz .

md5sum

検査

# md5sum php-5.1.2.tar.gz 
b5b6564e8c6a0d5bc1d2b4787480d792  php-5.1.2.tar.gz
===========================
md5: b5b6564e8c6a0d5bc1d2b4787480d792 
     b5b6564e8c6a0d5bc1d2b4787480d792
================
同じであるようだ
~~~~~~~~~~~~~~~~~

準備 その2

なにか いたずら されるかも しれないので (実際は 良くわからない)

# cd /var/data/aaa/apache2/conf/
# cp httpd.conf 0002_httpd.conf_before_php
# cd -
# pwd
/var/data/mkpackage/php-5-1-2

展開

# tar xvzpf php-5.1.2.tar.gz 2>&1 | tee untar_log
# cd php-5.1.2/

configure

apxs
********* /var/data/aaa/apache2/bin/apxs *********
の ありか を 確認して すこし 見ておくと 以下の ものから /usr/local に インストール されると仮定しようそうしたら 実行 してみよう

2. Unix/Windows: Where should my php.ini file be located?
**************
By default on Unix it should be in /usr/local/lib which is /lib. Most people will want to change this at compile-time with the --with-config-file-path flag. You would, for example, set it with something like: --with-config-file-path=/etc
************

ほたら

# ./configure --with-apxs2=/var/data/aaa/apache2/bin/apxs \
--with-pgsql=/usr/local/pgsql --enable-mbstring --without-mysql 2>&1 |  tee php_config_log
...
+--------------------------------------------------------------------+
| License:                                                           |
| This software is subject to the PHP License, available in this     |
| distribution in the file LICENSE.  By continuing this installation |
| process, you are bound by the terms of this license agreement.     |
| If you do not agree with the terms of this license, you must abort |
| the installation process at this point.                            |
+--------------------------------------------------------------------+

Thank you for using PHP.
# mv php_config_log ../

make

そんで もって

# make  2>&1 | tee make_php_log
Build complete.
(It is safe to ignore warnings about tempnam and tmpnam).

# mv make_php_log ../

さて ここから 無謀にも package を 作成してみましょう 習うより 馴れで す。

package 作成 前段 make install

前段の make install インストールを しましょう

# mkdir -p work/usr/local
# touch /tmp/mark ; sleep 1
# make install prefix=`pwd`/work/usr/local 2>&1 | tee make_install_log
Installing PHP SAPI module:       apache2handler
/var/data/aaa/apache2/build/instdso.sh \
SH_LIBTOOL='/var/data/aaa/apache2/build/libtool' libphp5.la /var/data/aaa/apache2/modules
/var/data/aaa/apache2/build/libtool --mode=install cp libphp5.la /var/data/aaa/apache2/modules/
cp .libs/libphp5.so /var/data/aaa/apache2/modules/libphp5.so
cp .libs/libphp5.lai /var/data/aaa/apache2/modules/libphp5.la
libtool: install: warning: remember to run \
`libtool --finish /var/data/mkpackage/php-5-1-2/php-5.1.2/libs'
sed: -e expression #1, char 34: Extra characters after command
sed: -e expression #1, char 51: Extra characters after command
Warning!  dlname not found in /var/data/aaa/apache2/modules/libphp5.la.
Assuming installing a .so rather than a libtool archive.
chmod 755 /var/data/aaa/apache2/modules/libphp5.so
[activating module `php5' in /var/data/aaa/apache2/conf/httpd.conf]
Installing PHP CLI binary: /var/data/mkpackage/php-5-1-2/php-5.1.2/work/usr/local/bin/
Installing PHP CLI man page: /var/data/mkpackage/php-5-1-2/php-5.1.2/work/usr/local/man/man1/
Installing build environment: /var/data/mkpackage/php-5-1-2/php-5.1.2/work/usr/local/lib/php/build/
Installing header files: /var/data/mkpackage/php-5-1-2/php-5.1.2/work/usr/local/include/php/
Installing helper programs: /var/data/mkpackage/php-5-1-2/php-5.1.2/work/usr/local/bin/
  program: phpize
  program: php-config
Installing man pages: /var/data/mkpackage/php-5-1-2/php-5.1.2/work/usr/local/man/man1/
  page: phpize.1
  page: php-config.1
Installing PEAR environment:      /var/data/mkpackage/php-5-1-2/php-5.1.2/work/u
sr/local/lib/php/
[PEAR] Archive_Tar    - installed: 1.3.1
[PEAR] Console_Getopt - installed: 1.2
pear/PEAR can optionally use package "pear/XML_RPC" (version >= 1.4.0)
[PEAR] PEAR           - installed: 1.4.6
Wrote PEAR system config file at: /usr/local/etc/pear.conf
You may want to add: /var/data/mkpackage/php-5-1-2/php-5.1.2/work/usr/local/lib/
php to your php.ini include_path
Installing PDO headers: /var/data/mkpackage/php-5-1-2/php-5.1.2/work/usr/local/include/php/ext/pdo/

探しもの

ちょっと 探しものを してみまひょ

# find /etc /sbin /lib /usr /var -cnewer /tmp/mark ! -type d -print >/tmp/files_php
# mv /tmp/files_php /home/mm/0001_first-step/
# chown mm.users /home/mm/0001_first-step/*
# rm /tmp/mark

そんで もって

$ head files_php 
/usr/local/etc/pear.conf
/var/data/aaa/apache2/modules/libphp5.so
/var/data/aaa/apache2/modules/libphp5.la
/var/data/aaa/apache2/conf/httpd.conf
/var/data/aaa/apache2/conf/httpd.conf.bak
/var/data/mkpackage/php-5-1-2/php-5.1.2/work/usr/local/bin/peardev
....

これらから 考えると /var/data/aaa/apache2/ に いろいろ 細工が 施される 様である確認しておこう

# ls -al /usr/local/etc/ | sed -e 1,3d
-rw-r--r--    1 root     root         1093 Mar 10 23:18 pear.conf
# ls -l /var/data/aaa/apache2/modules/ | sed -e 1d
-rw-r--r--    1 apache   apache       8873 Mar  3 20:21 httpd.exp
-rw-r--r--    1 root     root         1063 Mar 10 23:18 libphp5.la
-rwxr-xr-x    1 root     root     17315898 Mar 10 23:18 libphp5.so*
# ls -l /var/data/aaa/apache2/conf/ | sed -e 1d
-rw-r--r--    1 apache   apache      13645 Mar  3 20:28 0001_httpd.conf_org
-rw-r--r--    1 root     root        13678 Mar 10 10:29 0002_httpd.conf_before_php
drwxr-xr-x    2 apache   apache       4096 Mar  3 20:28 extra/
-rw-r--r--    1 apache   apache      13727 Mar 10 23:18 httpd.conf
-rw-r--r--    1 root     root        13678 Mar 10 23:18 httpd.conf.bak
-rw-r--r--    1 apache   apache      12958 Mar  3 20:28 magic
-rw-r--r--    1 apache   apache      15020 Mar  3 20:28 mime.types

これらから 考えるに インストール した段階で
/usr/local/etc/ に pear.conf が 追加されて
/var/data/aaa/apache2/modules/ に libphp5.la と libphp5.so* が 追加されて
/var/data/aaa/apache2/conf/ に httpd.conf httpd.conf.bak に なる
パッケージ作成後 pkgtool で インストール する場合は どうなるであろうか いちおう 待避 して 試みる、以下は 仮に インストール したものの ファイルの場所には ”mkpackage”の 文字列が 含まれて入ルであ ろう と 仮定して それ以外の ファイルは なんかいの ということで -v オプショ ン にて 抽出 してみた物です、完全か どうかは 不明であるが?

$ cat files_php | grep -v mkpackage
/usr/local/etc/pear.conf
/var/data/aaa/apache2/modules/libphp5.so
/var/data/aaa/apache2/modules/libphp5.la
/var/data/aaa/apache2/conf/httpd.conf
/var/data/aaa/apache2/conf/httpd.conf.bak

これら から 考えるに この 5個を 待避 しておけば 良いであろう

にゃんたろう 拝!
2006年 3月16日 (木) 23:08:44 JST 作成


次へ|戻る

Copyright © 2004.-2007. nyantarou All Rights Reserved.