KnowledgeTreeのPHPでPEARやPECLを使う

| コメント(0) | トラックバック(0)

引き続きKnowledgeTreeのプラグインを作ってる。

PHPでプログラミングをしてると、PEARPECLのライブラリを使いたくなる事があるけど、ちょっとだけファイルの修正が必要だった。

KnowledgeTreeはPHPやMySQLなど、必要なのは全てパッケージに含まれていて、PHPはデフォルトだと/opt/ktdms/php以下にインストールされる。で、試しにPECLを実行してみると以下のようなエラーが出る。PEARも同様。

# /opt/ktdms/php/bin/pecl 
/opt/ktdms/php/bin/pecl: line 28: /bitrock/knowledgetree/linux/build/output/php/bin/php: No such file or directory
/opt/ktdms/php/bin/pecl: line 28: exec: /bitrock/knowledgetree/linux/build/output/php/bin/php: cannot execute: No such file or directory

どうやらPHPをビルドした環境のパスが使われているらしい。

修正すべきファイルは以下の3つ

  • /opt/ktdms/php/bin/pecl
  • /opt/ktdms/php/lib/php/pearcmd.php
  • /opt/ktdms/php/lib/php/peclcmd.php

--- pecl.org    2008-12-28 21:01:30.000000000 +0900
+++ pecl        2008-12-28 22:36:37.000000000 +0900
@@ -4,10 +4,10 @@
 if test "x$PHP_PEAR_PHP_BIN" != "x"; then
   PHP="$PHP_PEAR_PHP_BIN"
 else
-  if test "/bitrock/knowledgetree/linux/build/output/php/bin/php" = '@'php_bin'@'; then
+  if test "/opt/ktdms/php/bin/php" = '@'php_bin'@'; then
     PHP=php
   else
-    PHP="/bitrock/knowledgetree/linux/build/output/php/bin/php"
+    PHP="/opt/ktdms/php/bin/php"
   fi
 fi

@@ -16,12 +16,12 @@
   INCDIR=$PHP_PEAR_INSTALL_DIR
   INCARG="-d include_path=$PHP_PEAR_INSTALL_DIR"
 else
-  if test "/bitrock/knowledgetree/linux/build/output/php/lib/php" = '@'php_dir'@'; then
+  if test "/opt/ktdms/php/lib/php" = '@'php_dir'@'; then
     INCDIR=`dirname $0`
     INCARG=""
   else
-    INCDIR="/bitrock/knowledgetree/linux/build/output/php/lib/php"
-    INCARG="-d include_path=/bitrock/knowledgetree/linux/build/output/php/lib/php"
+    INCDIR="/opt/ktdms/php/lib/php"
+    INCARG="-d include_path=/opt/ktdms/php/lib/php"
   fi
 fi

pearcmd.php
--- pearcmd.php.org     2008-12-28 21:09:59.000000000 +0900
+++ pearcmd.php 2008-12-28 21:10:44.000000000 +0900
@@ -29,8 +29,8 @@
 /**
  * @nodep Gtk
  */
-if ('/bitrock/knowledgetree/linux/build/output/php/lib/php' != '@'.'include_path'.'@') {
-    ini_set('include_path', '/bitrock/knowledgetree/linux/build/output/php/lib/php');
+if ('/opt/ktdms/php/lib/php' != '@'.'include_path'.'@') {
+    ini_set('include_path', '/opt/ktdms/php/lib/php');
     $raw = false;
 } else {
     // this is a raw, uninstalled pear, either a cvs checkout, or php distro
perlcmd.php
--- peclcmd.php.org     2008-12-28 21:09:00.000000000 +0900
+++ peclcmd.php 2008-12-28 21:09:20.000000000 +0900
@@ -23,8 +23,8 @@
 /**
  * @nodep Gtk
  */
-if ('/bitrock/knowledgetree/linux/build/output/php/lib/php' != '@'.'include_path'.'@') {
-    ini_set('include_path', '/bitrock/knowledgetree/linux/build/output/php/lib/php');
+if ('/opt/ktdms/php/lib/php' != '@'.'include_path'.'@') {
+    ini_set('include_path', '/opt/ktdms/php/lib/php');
     $raw = false;
 } else {
     // this is a raw, uninstalled pear, either a cvs checkout, or php distro

トラックバック(0)

トラックバックURL: http://www.kazu.tv/blog-mgr/mt-tb.cgi/726

コメントする

このブログの作者

名前:kazu
仕事:IT関係の何でも屋
メール:kazu 後幕 kazu どと tv
詳しくはこの辺

このブログ記事について

このページは、kazuが2008年12月26日 01:01に書いたブログ記事です。

ひとつ前のブログ記事は「ドキュメントのインデックス生成」です。

次のブログ記事は「CentOSで標準以外のパッケージも使う。」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

ウェブページ