Xdebug(2.0.5)をインストールする
環境
・CentOS:5.4・PHP:5.3.1
・(php-develインストール済)
LatestバージョンをGET〜解凍〜phpize
$ wget http://xdebug.org/files/xdebug-2.0.5.tgz $ tar zxvf xdebug-2.0.5.tgz $ cd xdebug-2.0.5 $ phpize
ここでエラー発生。
Configuring for: PHP Api Version: 20090626 Zend Module Api No: 20090626 Zend Extension Api No: 220090626 /usr/bin/m4: unrecognized option `--debugfile=autom4te.cache/traces.0t' Try `/usr/bin/m4 --help' for more information. autom4te: /usr/bin/m4 failed with exit status: 1
どうやら、m4関連のオプションが認識されていないらしいので、m4とautoconfをlatestバージョンにアップデートすればいいのかなと思いインストール作業へ。ここで注意、autoconfはm4に依存するらしいので、m4からインストールする。
m4(1.4.13)インストール
$ wget ftp://ftp.gnu.org/gnu/m4/m4-1.4.10.tar.gz $ tar zxvf m4-1.4.10.tar.gz $ cd m4-1.4.10 $ ./configure --prefix=/usr/local/ $ make $ make install
autoconf(2.65)インストール
$ wget ftp://ftp.gnu.org/gnu/autoconf/autoconf-2.65.tar.xz $ tar zxvf autoconf-2.65.tar.xz $ cd autoconf-2.65 $ ./configure --prefix=/usr/local/ $ make $ make install
でそれぞれ確認
$ /usr/local/bin/m4 --version m4 (GNU M4) 1.4.13 ・・・・・・ $ /usr/local/bin/autoconf --version autoconf (GNU Autoconf) 2.65 ・・・・・・
ちゃんと、入ってました。
さてここで、本題に戻ってphpizeの作業に戻る。
$ phpize Configuring for: PHP Api Version: 20090626 Zend Module Api No: 20090626 Zend Extension Api No: 220090626 /usr/bin/m4: unrecognized option `--debugfile=autom4te.cache/traces.0t' Try `/usr/bin/m4 --help' for more information. autom4te: /usr/bin/m4 failed with exit status: 1
またしても同じエラー。???と思ってエラーを確認すると、インストールした、m4のディレクトリ/usr/local/binではなく、前のバージョンの/usr/bin/m4が用いられてることに気付いた。
なので、/usr/bin/の旧バージョンを上書きしてみることに。(一応バックアップ推奨)。読み込むパスの優先度の設定をすればいいと思うが、やり方がわからなかったので、力技でやってみた。(autoconfをインスールした際にできた、その他のコマンドも上書きした。)
$ rm -f /usr/bin/m4 $ cp /usr/local/bin/m4 /usr/bin/. $ rm /usr/bin/autoconf $ cp /usr/local/bin/autoconf /usr/bin/. $ rm -f /usr/bin/autoheader $ cp /usr/local/bin/autoheader /usr/bin/. $ rm -f /usr/bin/autom4te $ cp /usr/local/bin/autom4te /usr/bin/. $ rm -f /usr/bin/autoscan $ cp /usr/local/bin/autoscan /usr/bin/. $ rm -f /usr/bin/autoreconf $ cp /usr/local/bin/autoreconf /usr/bin/. $ rm -f /usr/bin/autoupdate $ cp /usr/local/bin/autoupdate /usr/bin/. $ rm -f /usr/bin/ifnames $ cp /usr/local/bin/ifnames /usr/bin/.
これで、もう一度。phpsizeをすると通ったので、その後の処理もしてしまう。
$ phpize $ ./configure --enable-xdebug $ make $ cp modules/xdebug.so /usr/lib/php/modules/.
これで、Xdebugのインストールは終了。最後にphp.iniに以下を追加して再読み込みして終了。
$ vim php.ini ・・・・・・ zend_extension=/usr/lib/php/modules/xdebug.so $ /etc/rc.d/init.d/httpd reload
phpファイルを作って、var_dump()やエラー画面が綺麗に表示されていれば無事終了。
参考
- AutoconfとGNU M4のインストール
- PHPをXDebugとVimでデバッグする (Ubuntu 8.10編とCentOS 5.4/4.5編)
- XDEBUG EXTENSION FOR PHP | インストール
- redcloud @ ウィキ
Linuxの環境変数を設定した。
先日入れたsubversionを使ってコミットする際に毎度、以下のように注意を受けるので、環境変数を設定することにした。
svn: 環境変数 SVN_EDITOR, VISUAL, EDITOR のどれも設定されていなく、実行時の設定オプション 'editor-cmd' も見つかりません
環境変数を設定するには以下のファイルを編集すればいいらしい・・・。
・/etc/profile
・~/.bash_profile
今回は全ユーザにとって反映したいので、/etc/profileを編集した。(末尾に追加した。)
$ vim /etc/profile ・・・・・ export SVN_EDITOR=vim
その後、設定を反映するために、
$ source /etc/profile
で確認する
[xxx@xxx ~]$ echo $SVN_EDITOR vim [xxx@xxx ~]$
これで設定完了。また、設定されている環境変数を確認するコマンドは
$ printenv
だそうだ・・・。
mysqldump の書式
dumpを使ったので備忘記録。
mysqldump -u ユーザ名 -pパスワード データベース名 -h ホスト -P ポート番号 テーブル名
テーブル名を指定しないとデータベース全体をdumpする。
include_pathを複数指定にする。(/etc/php.ini)
Warning: date()が出るのでdate.timezoneの設定。
Warning: date(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or theult_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelledone identifier. We selected 'Asia/Tokyo' for 'JST/9.0/no DST' instead in ○○○
の警告が出たので、Googleさんに聞いたら、php.iniでdate.timezoneを設定すればいいらしい。なので修正した。
$ vim /etc/php.ini ・・・・・ date.timezone = Asia/Tokyo ・・・・・
でリロード
$ /etc/rc.d/init.d/httpd reload
これだけ。
参考
Tracの文字化け対策。UTF-8にする
sshで入ったときに、user@localhostだったので、localhostの部分を設定した
sshで入っは時に、以下のように表示されていた。
[xxx@localhost ~]$
今回はこのlocalhostの部分を変更しようと思う。同時に複数のサーバに入っているときに見分けがつかないので設定することに。いろいろ調べた結果、
- /etc/hosts
- /etc/sysconfig/network
/etc/sysconfig/network
$ vim /etc/sysconfig/network HOSTNAME=kint02.ki.noda.tus.ac.jp #ドメイン
/etc/hosts
$ vim /etc/hosts 127.0.0.1 kint02.ki.noda.tus.ac.jp kint02 localhost.localdomain localhost #※
※127.0.0.1 サーバのドメイン 表示したい名前 localhost.localdomain localhost
書式についてはよく理解していないが・・・
そして、変更した設定を再読み込み
$ /etc/rc.d/init.d/network reload
localhostからkint02に変わった↓
[xxx@kint02 ~]$
よしこれで目的達成。
参考