macでmampを使ってMT4をインストールしてみる
簡単にできるかな、と思ったらものすごく面倒だったので。
あ、今回はDBにmySQLを使おうと思ったので面倒になっただけで、SQliteとかだったら簡単にできると思います。
MAMPをインストール
これはインストーラー付きなので簡単ですね。
サイトからdmgダウンロードしてインストーラーを起動してインストールします。
OSXデフォルトのWeb共有は使わないので、こんな設定にしました。
- ポート
- Apache: 80
- MySQL: 3306
- ドキュメントルート
- /Users/hoge/Sites
localhost:80にアクセスして動作を確認します。
次いで、phpMyAdminからMT4用のDB(mt4)とユーザー(mtuser)を作成します。
この辺は全然分からないので、適当に...
hostsを書き換える
パスの書き換えが面倒なので、hostsの書き換えで対応します。
emacs派なのでemacsで。
sudo emacs /etc/hosts
下記を追加
127.0.0.1 www.s-cut.net #shortcut
MT4をインストール
個人ライセンスを選んでアーカイブをダウンロードします。
解凍してcgi/mt4以下に配置し、.htaccessにMIMEタイプの関連づけのなどの設定を記述します。
Options -Indexes
Options +ExecCGI
AddType application/x-httpd-cgi .cgi
httpd.confに書いてもいいのですが、レンタルサーバにアップする事を考えて、.htacessで。
MT4を設定する
http://localhost/cgi/mt4/mt.cgiにアクセスします
チェックウィザードが走り、一応OKとなっていますが、いくつか足りないモジュールがあるようです。
DBD::mySQLが足りない、ということで、このままではmySQLが使えませんね。
という訳で、DBD::mySQLをインストールします。
ここからが大変だった...。
DBD::mySQLをインストール
CPANを使ってインストール
$ cpan
cpan> install DBD::mysql
[中略]
Can't exec "mysql_config": No such file or directory at Makefile.PL line 76.
[後略]
...ということで、configファイルが見つかってませんね。
MAMPの中に入っているので、オプションで指定して直接makeしてみます。
$ cd ~/.cpan/build/DBD-mysql-****/
$ sudo perl Makefile.PL --Cflags=-I/Applications/MAMP/Library/include/mysql --mysql_config=/Applications/MAMP/Library/bin/mysql_config
[中略]
$ sudo make
[中略]
dbdimp.h:22:49: error: mysql.h: No such file or directory
dbdimp.h:23:45: error: mysqld_error.h: No such file or directory
dbdimp.h:25:49: error: errmsg.h: No such file or directory
[後略]
ヘッダーファイルがないんですか...。MAMPに含まれてないっぽいです。
いろいろ検索したのですが、面倒になって来たのでmacportを使ってmySQL5インストールし、そこに含まれるヘッダーファイルを利用することにします。
$ sudo port install mysql5
で、さっきの/DBD-mysql-****/ディレクトリでもう一回makeしてみます。
$ sudo perl Makefile.PL --cflags="-I/opt/local/include/mysql5/mysql" \
--libs="-L/opt/local/lib -L/opt/local/lib/mysql5/mysql -lmysqlclient -L/opt/local/lib -lz -lm -L/opt/local/lib -lssl -lcrypto"
--testsocket="/Applications/MAMP/tmp/mysql/mysql.sock"
--testpassword="root"
--mysql_config="/Applications/MAMP/Library/bin/mysql_config"
$ sudo make
$ sudo make install
これでなんとかインストールできました...。
あと、スクリプトからmysqld.sockの場所を聞かれるので、MAMPから強引にシンボリックリンクを張ります。
cd /opt/local/var/db/mysql5/
sudo ln -s /Applications/MAMP/tmp/mysql/mysql.sock mysqld.sock
もう一度MT4を設定する
http://localhost/cgi/mt4/mt.cgiにアクセスします。
で、各種設定をして、mySQLの設定を下記のように設定します。
- ソケット: /Applications/MAMP/tmp/mysql/mysql.sock
- ポート: 3306
これで、無事設定が完了しました...。
Tweet