デバック(Mac)_005_対応諸々

色々とわからないなりに対応したときのことを

覚えているうちに、覚えている範囲で記載。

 

思い出したものからメモするので、

対応順ではありません。

 

==========================================

 エラーログの出力場所

==========================================

これはphpinfoに記載があった。

f:id:shevhome:20150921194331p:plain

 

==========================================

 Zend Engineのバージョンの違いのエラー

==========================================

上記のエラーログフォルダの中の

apache_error.log」

をコマンド

tail -f apache_error.log
を確認していたときに出たエラー。

f:id:shevhome:20150921194743p:plain

これは

xdebugの手動コンパイル時のZend Engineのバージョン

MAMPが動いている環境のZend Engineのバージョン

が異なることが原因らしい。

<参考>

Xdebug: Documentation

の公式にも内容説明の記載がありました。

f:id:shevhome:20150921195211p:plain

他には

aim developer: PHPのextension追加時の注意点

の記事などを参考にしました。

which phpize

/usr/bin/phpize –version

で自分の端末でもバージョンを確認できました。

<対応>

対応としては、

・通常のMacPHPのバージョン

MAMPPHPのバージョン

 を合わせて実施することでうまくいきました。

 

通常のMacPHPのバージョンは

php -v

で確認し、「5.5.27」。

そして、MAMPを同じ5.5系に合わせました。

f:id:shevhome:20150921200621p:plain

の「Preferences…」で開き、PHPタブで変更。

f:id:shevhome:20150921200654p:plain

バージョンによっては、上記の画面からの設定だと、

PHPバージョンを合わせることができないかもしれないです。

そのときは、MacPHPのバージョンアップをするなどの

対応が必要となると思います。

 

 

==========================================

 「sudo:pecl:command not found」の対応

==========================================

shevhome.hateblo.jp

==========================================

 「Cannot find autoconf」の対応

==========================================

これは記憶はあるのだが、コマンドは下記を実施したはず。

curl -O http://ftp.gnu.org/gnu/autoconf/autoconf-2.62.tar.gz
tar -zvxf autoconf-2.62.tar.gz
cd autoconf-2.62/
sudo ./configure
sudo make
sudo make install

==========================================

 「MacPorts」の対応

==========================================

これは記憶にほとんどないが、コマンド履歴を

history

で確認したところ、下記のコマンドがあったのでメモ。

curl -O https://distfiles.macports.org/MacPorts/MacPorts-2.3.3.tar.bz2

tar xf MacPorts-2.3.3.tar.bz2
cd MacPorts-2.3.3/
./configure
make
sudo make install

 

==========================================

 「m4」の対応

==========================================

これも足らないというメッセージの対応で行った記憶はあるので、

とりあえず、コマンド履歴をメモ。

curl -O http://ftp.gnu.org/gnu/m4/m4-1.4.9.tar.gz
tar -zvxf m4-1.4.9.tar.gz
cd m4-1.4.9
sudo ./configure
sudo make
sudo make install

 

とりあえず、覚えているのは以上。

思い出した時点で随時、追記する。

デバック(Mac)_004_デバックの実施

ブレークポイントをつけて、デバックを実行する方法は

公式サイトに載っています。

PHP向けのNetBeans IDEのエディタでのPHPソース・コードのデバッグ

 

===============================================

 デバック設定の変更

===============================================

ちなみにデバックするときにCakePHPのデバックの際は、

最初の行で止まらないように設定を変更すると良いと、

ネットに情報が載っていました。

 

左上の「NetBeans」-「Preferences…」から

f:id:shevhome:20150921191047p:plain

で設定画面を開き、

「Stop at First Line」のチェックを外した方た良いらしいです。

f:id:shevhome:20150921191127p:plain

 

===============================================

 デバックの実行

===============================================

まぁ、幾つかWorningが出ていますが、

そこはとりあえずスルーしてデバックを実行します。

f:id:shevhome:20150921191345p:plain

上記のapp-webroot-index.phpをダブルクリックすると、

ソースが表示されると思います。

 

試しにブレークポイントを設定してみます。

すると赤い色設定が行われます。

f:id:shevhome:20150921191729p:plain

 

その状態のまま、

f:id:shevhome:20150921191814p:plain

でデバックを実行してみると、

f:id:shevhome:20150921191831p:plain

このように黄緑色にブレークポイントで止まってくれます。

通過行の値に関しても「$fileName」にフォーカスを

当ててみると、

f:id:shevhome:20150921193520p:plain

のように値が表示されているので、デバックできていると思います。

※使ってみて、何か対応した点などがあれば追記します。

デバック(Mac)_003_NetBeansへのプロジェクトのインポート

 NetBeansにBaserCMSのローカル環境の

プロジェクトをインポートする。

 

==============================================

 NetBeansを開き、プロジェクトをインポート

==============================================

f:id:shevhome:20150920175558p:plain

からインストールした

f:id:shevhome:20150921184256p:plain

を実行します。

すると、NetBeansが開き、下記の初期ページが表示されます。

f:id:shevhome:20150920175458p:plain

f:id:shevhome:20150920175851p:plain←必要ないので、この❌印で閉じてください

 

そして、Projectsタブ内で右クリックし、

「New Project」を選択

f:id:shevhome:20150921184459p:plain

 

プロジェクト作成画面が開くので、

「Sources Folder」で対象のフォルダに変更します。

※「PHP Version」も必要により変更してください。

f:id:shevhome:20150921184734p:plain

これが「Browse…」ボタンを押して、Source Folderを編集する画面

「/Applications/MAMP/htdocs/basercms」を選択 f:id:shevhome:20150921184739p:plain

 

変更したら「Next >」で次の画面に進みます。

 

次の画面では「Project URL:」を設定します。

MAMPのBaserCMSのトップページのURLを設定

f:id:shevhome:20150921185036p:plain

 

設定できたら「Next >」で次へをクリック。

 

最後にPHP Frameworksとして「CakePHP」を選択します。

設定できたらStepの[5.Composer]は特に必要なかったので、

「Next >」ではなく、「Finish」で終わらせます。

f:id:shevhome:20150921185218p:plain

 

NetBeansの画面に下記のようにでれば完了です。

f:id:shevhome:20150921185540p:plain

デバック(Mac)_002_xdebugのインストール

Xdebug」のインストールですが、

そもそも、これがいるのかどうかを調べます。

※本来、xdebugは標準で入っていると記載もありましたので、

  端末によっては入っているかもしれません。

 

=============================================

 調査

=============================================

調べ方は下記のQiitaの記事を参考にさせて頂きました。

簡単にいうと

・phpinfo()の内容を確認

  ↓

・取得した内容を

 Xdebug: Support; Tailored Installation Instructions

 に貼り付けて確認

という流れです。

 

ちなみに、phpinfo()に関しては、先にプロジェクトをインポートをして

PHPファイルに直接、「echo phpinfo();」などで出力しても良いですが、

MAMPでは確認できる方法がありますので、そちらで確認しても

良いかと思います。

 

=============================================

 インストール

=============================================

 

上記のQiitaの記事通りに実施して、

f:id:shevhome:20150921180453p:plain

という表示がされ、

f:id:shevhome:20150921180613p:plain

のように表示されたと思うので、その通りに実施。

<上記のテキスト>

1.ファイルのダウンロード:Xdebug: Downloads

  リンク先の下記のような表示部分を探し、

 f:id:shevhome:20150921180956p:plain

 「source」をクリックするとtarファイルのダウンロードが開始されます。

 ※随時、新しいバージョンに変わると思います。

 

2〜7.ファイル解凍など

tar -xvzf xdebug-2.3.3.tgz

cd xdebug-2.3.3

phpize

cp modules/xdebug.so /Applications/MAMP/bin/php/php5.6.10/lib/php/extensions/no-debug-non-zts-20131226

 

8.PHPのINIファイルの編集

/Applications/MAMP/bin/php/php5.6.10/conf/php.ini

zend_extension = /Applications/MAMP/bin/php/php5.6.10/lib/php/extensions/no-debug-non-zts-20131226/xdebug.so

上記に合わせて、必要な記載を追加しましょう。

参考にさせて頂いたのは下記のQiitaの記事です。

qiita.com

 

9.サーバの再起動

ここではローカルのMAMPの再起動の事と捉えてください。

 

デバック(Mac)_001_NetBeansのインストール

まずは「NetBeans」のダウンロードとインストール

Welcome to NetBeans

 

==========================================

 ダウンロード

==========================================

 NetBeansのサイトから

NetBeans IDE 8.0.2」を選択。

 

【注意】

Beta版の「NetBeans IDE 8.1Beta」をインストールすると、

あとからBeta版だからなのかわからないが、

プラグインとしてCakePHPが追加できませんでした。

※絶対に追加できないというわけではないと思いますが、

 私はわからず、再度、8.0.2をインストールしなおしたため、

 安定版をお勧めしておきます。

※安定版の8.0.2ではデフォルトで追加項目として準備されてました

 

 

ここからBeta版のキャプチャになっていますが、

どのバージョンでもある程度、同じだと思います。

f:id:shevhome:20150920172144p:plain

下記ページに遷移するので「Download」をクリック

f:id:shevhome:20150920172337p:plain

PHPの「Download」をクリック。

f:id:shevhome:20150920172344p:plain

すると下記ページが表示されてダウンロードが開始されます。

f:id:shevhome:20150920172350p:plain

==========================================

 インストール

==========================================

ダウンロード先の

f:id:shevhome:20150920172528p:plain

を実行し、開いたフォルダの下記をクリック。

f:id:shevhome:20150920172636p:plain

 するとインストールウィザードが開始されます。

 

ポップアップでインストールしていいかでるので、

「Continue」で続けます。

f:id:shevhome:20150920172805p:plain

そして、以下のインストール初期画面が表示されます。

「Continue」で続けます。

f:id:shevhome:20150920172913p:plain

次にライセンスに関する記載が表示されるので

「Continue」で続けます。

f:id:shevhome:20150920173037p:plain

ライセンス同意のポップアップが表示されるので

「Agree」をクリック。

f:id:shevhome:20150920173142p:plain

保存先の確認が表示されるので、必要に応じて変更。

今回はデフォルトのまま。

「Install」で続けます。f:id:shevhome:20150920173235p:plain

PCへのアクセス許可が求められるので、

自分のPC情報を入力。

「Install Software」でインストールを実行。

下記の画面が表示されれば完了です。

f:id:shevhome:20150920173702p:plain

 

 

デバック(Mac)_000_NetBeansでデバック環境構築

うまくいかなかったりして、色々と試行錯誤しながら、

とりあえず、ブレークポイントで止まるとこまで行ったので、

覚えている範囲(キャプチャが残っている範囲)でメモを残す。

 

デバック環境構築の流れとしては、

=======================================

1.NetBeansのダウンロード+インストール

  ↓

2.xdebugのインストール+設定

  ↓

3.NetBeansへのBaserCMSのインポート

  ↓

4.ブレークポイントの設定とデバック実施

————————————————————

5.対応諸々

=======================================

プロフィール

学ぶパンダ

初心者向けにプログラミング学習や

就職・転職に向けた情報を発信

独学向け(勉強方法)
独学向け(プログラミング)
独学向け(Webデザイン)
独学向け(javaScript)
独学向け(PHP/Laravel)
独学向け(Ruby/Rails)