Home > MacPorts Archive

MacPorts Archive

MacPortsによるRoRの環境構築

Mac OSX LeopardでMacPortsを使って環境構築する。

MacPortsをインストール
http://www.macports.org/install.php

ターミナルの環境変数を追加してMacPortsのパスを通す
http://showzine.info/blog/archives/431

MacPorts自体を最新にアップデート

$ sudo port -v selfupdate

RubyGemsをMacPortsでインストール

$ sudo port install rb-rubygems

RubyをMacPortsでインストール

$ sudo port install ruby

Railsをインストール
そのままgemでインストール、アップデートを行うと最新の開発版が入りrails実行時にエラーが起こるので、まず最初に開発版を含むリポジトリの削除を行い、Rails 2.0.2を入れるようにする。
*URLの最後にスラッシュをつけないように

$ sudo gem sources -r http://gems.rubyonrails.org
$ sudo gem install rails

Railsのセットアップ(開発用ディレクトリを作る)
ターミナルを起ち上げて

$ cd ~/Documents/
$ rails rails-demo

これで/ユーザ名/Documents(書類)/ディレクトリに「rails-demo」というフォルダ(プロジェクトとかアプリケーションとも)が作成される。以降、rails-demoアプリを作成していくには、このフォルダがルートディレクトリになる。

ブラウザで確認
ターミナルで作成した「rails-demo」ディレクトリに移動。

$ cd ~/Documents/rails-demo
$ ruby script/server

を実行すると、簡易WebサーバーのWEBrickが起動する。
この状態でブラウザでlocalhost:3000にアクセスして、Welcome aboard 画面が表示されればrailsのセットアップは完了。

MacPortsで各種パッケージを更新

$ sudo port -d selfupdate ... MacPorts本体とカタログを更新
$ sudo port upgrade installed ... MacPortsでインストールされているパッケージを全て最新版に
$ sudo gem update --system ... RubyGems本体を更新します
$ sudo gem update ... RubyGemsでインストールされているRuby関連パッケージを全て最新版に
$ port installed ... MacPortsでインストールしたもの一覧を確認

MacPortsのために環境変数を追加する

インストールした MacPorts によって各種パッケージが更新できるようにパスを通す。(そのために環境変数を追加する)

自分のホームディレクトリの.bashrcに以下の二行を追加する。

export PATH=/opt/local/bin:/opt/local/sbin/:$PATH
export MANPATH=/opt/local/man:$MANPATH

以下、その詳細。

Continue reading

MacPortsの再インストール

MacPortsを削除(uninstall)してから入れ直す

ターミナルで以下のコマンドを実行してインストール済みの ports を全削除。

$ sudo port deactivate active

そして、/optディレクトリを削除。

シェルをデフォのbashから、MacPortsで導入したものに変更してたりする場合、デーモンとかも導入している場合は以下のURLの「 MacPorts を再インストールしたい」を参照のこと。
http://macwiki.sourceforge.jp/wiki/index.php/MacPorts

MacPortsによるApache2+MySQL5+PHP5の環境構築まとめ

MacPortsでPHP/MySQL5のローカル環境を作る手順まとめ

MacPortsのインストールと環境変数の追加
http://showzine.info/blog/archives/307

MacPortsでApache2をインストール
http://showzine.info/blog/archives/316

MacportsでMySQLをインストール
http://showzine.info/blog/archives/311

MacPortsでPHP5をインストール
(PHPはvariantsの指定しないとインストール出来なかった)
http://showzine.info/blog/archives/320

MacPortsでインストールしたPHP5とMySQL5を接続する
http://showzine.info/blog/archives/324

MacPortsでインストールしたPHP5とMySQL5を接続する

MacPortsでApache2、MySQL5、PHP5をインストールし、このMySQLとPHPを連動させられるように接続するための設定をする。

インストール済みのPHPの設定ファイル「php.ini」内にmysqlソケットの記述を追加

/opt/local/etc/mysql5/my.cnfの中の[client]部分にある
socket=/opt/local/var/run/mysql5/mysqld.sock に合わせて

/opt/local/etc/php.iniの中の mysql.default_socket 部分を
mysql.default_socket = /opt/local/var/run/mysql5/mysqld.sock
と記述する。

MySQLの設定を変更したのでMySQLを再起動

$ sudo launchctl stop org.macports.mysql5
$ sudo launchctl start org.macports.mysql5
$ sudo /opt/local/apache2/bin/apachectl stop
$ sudo /opt/local/apache2/bin/apachectl start

MacPortsでPHP5をインストール

variantsとしてapache2とmysql5とpearを指定してphp5をportコマンドでインストール
(何度も失敗したけどこうしてvariantsの指定を加えたらうまくいった)

$ sudo port -v install php5 +mysql5 +apache2 +pear

portコマンドが終了したら、portコマンドの最後に示された後処理を実行

$ sudo /opt/local/apache2/bin/apxs -a -e -n "php5" libphp5.so
$ cd /opt/local/etc
$ sudo cp php.ini-recommended php.ini

mod_php初期化用のmod_php.confをインクルードする定義をapache2の設定ファイルhttpd.confに加える
/opt/local/apache2/conf/httpd.confに以下の記述を

Include conf/extras-conf/mod_php.conf
Addtype application/x-httpd-php .php

apachectl configtestで設定に間違いがないことを確認

$ sudo /opt/local/apache2/bin/apachectl configtest
Syntax OK

設定ファイルの変更を有効にするためにapacheを再起動

$ sudo /opt/local/apache2/bin/apachectl stop
$ sudo /opt/local/apache2/bin/apachectl start

確認のために、例えばphpinfo.phpなんてファイルを以下の内容で作成し
/opt/local/apache2/htdocs/
に置いてアクセスしてみる。

<?php phpinfo(); ?>

例のPHPの詳細情報が表示されればオーケー。

JavaFlavor Weblogさんの「MacPortsでApache2+PHP5」というエントリーと、それについていた通りすがりさんのコメントのおかげで出来ました。ありがとうございました。

MacPortsでApache2をインストール

ターミナルからportコマンドを使ってApache2をインストール

$ sudo port install apache2

install途中でerrorが出て止まる

Error: The following dependencies failed to build: apr-util sqlite3 pcre
Error: Status 1 encountered during processing.

sqlite3をcleanして再度apache2をinstall

$ sudo port clean --all sqlite3(sqlite3をclean)
$ sudo port install apache2(もいっかいApache2のinstallにトライ)

今度は成功。なんでだろう?
(ググったら、けっこうこの関門?を越えている人を発見)

apacheの自動起動を設定

$ sudo launchctl load -w /Library/LaunchDaemons/org.macports.apache2.plist

apacheの設定ファイルが無いのでサンプルをコピー
コピーして、コピー元と同じディレクトリにhttpd.confとして置く

$ sudo cp /opt/local/apache2/conf/httpd.conf.sample /opt/local/apache2/conf/httpd.conf

apacheの設定ファイルを編集
上記の作業でコピーして用意した/opt/local/apache2/conf/httpd.conf
この「httpd.conf」の19行目辺りに以下の記述を追加(conf.d 以下を読みに行くように)

Include conf.d/*.conf

つづいて以下の一行をコメントアウト
(ないモジュールを読み込もうとして起動しないので#でコメントアウトして無効にする)

LoadModule ssl_module modules/mod_ssl.so

PHPの設定ファイルphp.iniを作成
同じく、MacPortsで入れたPHP5を使用したいので

$ sudo mkdir /opt/local/apache2/conf.d/

管理者権限で「conf.d」ディレクトリを作って

$ sudo vim /opt/local/apache2/conf.d/php.ini

同じく管理者権限でvimを起動させて「php.ini」に以下の内容を記述して保存

LoadModule php5_module modules/libphp5.so
AddHandler php5-script .php
AddType text/html .php
DirectoryIndex index.php

apacheの起動

$ sudo /opt/local/apache2/bin/apachectl start

http://localhost/ にアクセスして 「It works!」 が表示されればオーケー。
(/opt/local/apache2/htdocs/にあるindex.htmlを表示している)

MacportsでMySQLをインストール

mysql5にvariantsをつけてインストール

このvariantsをつけておくとMySQLサーバの自動起動のためのscriptsも一緒にインストールできるので便利。

$ sudo port install mysql5 +server

mysqlを初期化

$ sudo -u mysql mysql_install_db5

MySQLの起動確認

$ sudo /opt/local/share/mysql5/mysql/mysql.server start
Starting MySQL
.. SUCCESS!

MySQLの接続

$ mysql5 -u root -p(初期状態ではパスワードは設定していないのでそのままリターンでOK)

MySQLのroot権限にパスワードを設定する(MySQLに接続した状態で以下のコマンドで設定)

mysql> set password for root@localhost=password('password');

my.cnf(設定ファイル)を作成する
/opt/local/share/mysql5/mysql/に入った「my-small.cnf」を
/opt/local/etc/mysql5/my.cnfとしてコピー。

$ sudo cp /opt/local/share/mysql5/mysql/my-small.cnf
/opt/local/etc/mysql5/my.cnf

上記作業でコピーしたファイルをvim(などのテキストエディタ)で開いてから以下の内容を該当部分に追記(ないものは項目ごとペーストで)

$ sudo vim /opt/local/etc/mysql5/my.cnf

my.cnf に追記する内容

[client]
default-character-set=utf8

[mysqld]
default-character-set=utf8
skip-character-set-client-handshake

[mysql.server]
user=mysql
default-character-set=utf8

[mysqld_safe]
default-character-set=utf8

[mysql]
default-character-set=utf8

[mysqldump]
default-character-set=utf8

設定ファイル(my.cnf)の編集内容を有効にするためにMySQLを再起動(停めて、また起動)

$ sudo launchctl stop org.macports.mysql5
$ sudo launchctl start org.macports.mysql5

mysqlに繋いでmysql> status;で文字コードの設定が有効になっているか確認。

起動時にMySQLサーバが自動で起動するように設定

$ sudo launchctl load -w /Library/LaunchDaemons/org.macports.mysql5.plist

MySQLドライバをインストール

$ sudo port install rb-dbi +dbd_mysql

MacPortsのインストールと環境変数の追加

まず、開発ツールをインストール(MacPortsはソフトウェアのパッケージをコンパイルしてインストールするので)
LeopardのCD-ROMに入っている
Optional Installs/Xcode Tools/XcodeTools.mpkg

  • MacPortsのLeopard版をインストール(http://www.macports.org/
  • MacPortsがインストールする各パッケージのために環境変数を追加(使用するシェルの設定ファイルに追記する)以下はデフォのbashを例に。

ホームディレクトリ(Users/ログインアカウント名)
の.bashrcに以下の二行を追加する。

export PATH=/opt/local/bin:/opt/local/sbin/:$PATH
export MANPATH=/opt/local/man:$MANPATH

そして、
.bash_profileというファイルをホームに作って、
その中に source ~/.bashrc と記述しておく。
(※Tigerの場合はこれはいらない)

これで、portコマンドを使用してインストールする
各パッケージは/opt以下に入ってくる。

ターミナルを再起動してから(環境変数を有効に)

インストールしたMacPortsをportコマンドで最新の状態に

$ sudo port -d selfupdate

インストールできるパッケージのリストを最新のものに更新

$ sudo port -d sync

他のコマンドは以下のURLを参考に
http://d.hatena.ne.jp/hakobe932/20061208/1165646618
http://openlab.dino.co.jp/2008/08/18/220655330.html

MacPortsの主要コマンド

MacPorts自信を最新の状態にupdate

$ sudo port selfupdate

インストールできるパッケージのリストを最新のものに更新

$ sudo port -d sync

インストールしたいパッケージ(ports)を探す

$ port search 検索語句

パッケージをインストール

$ sudo port install パッケージ名

versionを指定してインストール
例えば、Railsの2.0.2を指定してインストール

$ sudo gem install rails -y -v 2.0.2

インストール済みのパッケージ一覧を取得

$ port installed

インストール済みのパッケージを非アクティブ状態にする

$ sudo port deactivate パッケージ名
※またアクティブにしない限り活動停止状態
※アクティブにするには
$ sudo port activate パッケージ名

インストール済みの全てのパッケージをupdate

$ sudo port upgrade installed

パッケージを指定してupdate

$ sudo port upgrade パッケージ名

パッケージを削除(アンインストール)

$ sudo port uninstall パッケージ名
RubyGemsを利用してインストールしたRailsなんかは「gem」をつけて
$ sudo gem uninstall rails

他、以下のURLを参考に
http://d.hatena.ne.jp/hakobe932/20061208/1165646618
http://openlab.dino.co.jp/2008/08/18/220655330.html

Home > MacPorts Archive

Archives

Return to page top