Tag: MacPorts





2013年 6月 2

### インストール
ビルドにそこそこ時間がかかる。6時間なんてエントリーもあったけどそんなにかからなかった。15-20分位?環境はMacBookPro Retina, 13-inch, Early 2013。他のエントリーでは依存問題が…的なのがあったけど、特に問題がなかった。

$ sudo port install mongodb
Warning: port definitions are more than two weeks old, consider using selfupdate
--->  Cleaning bzip2
--->  Unable to uninstall bzip2 @1.0.6_0, the following ports depend on it:
--->  	pcre @8.12_1
--->  	python27 @2.7.2_2
--->  	freetype @2.4.9_1
--->  	php5 @5.3.10_0+apache2
Warning: Uninstall forced.  Proceeding despite dependencies.
--->  Deactivating bzip2 @1.0.6_0
--->  Unable to deactivate bzip2 @1.0.6_0, the following ports depend on it:
--->  	pcre @8.12_1
--->  	python27 @2.7.2_2
--->  	freetype @2.4.9_1
--->  	php5 @5.3.10_0+apache2
Warning: Deactivate forced.  Proceeding despite dependencies.
--->  Cleaning bzip2
--->  Uninstalling bzip2 @1.0.6_0
--->  Cleaning bzip2
--->  Fetching archive for bzip2
--->  Attempting to fetch bzip2-1.0.6_0.darwin_12.x86_64.tbz2 from http://packages.macports.org/bzip2
--->  Attempting to fetch bzip2-1.0.6_0.darwin_12.x86_64.tbz2.rmd160 from http://packages.macports.org/bzip2
--->  Installing bzip2 @1.0.6_0
--->  Activating bzip2 @1.0.6_0
--->  Cleaning bzip2
--->  Computing dependencies for libedit
--->  Fetching archive for libedit
--->  Attempting to fetch libedit-20121213-3.0_0.darwin_12.x86_64.tbz2 from http://packages.macports.org/libedit
--->  Attempting to fetch libedit-20121213-3.0_0.darwin_12.x86_64.tbz2.rmd160 from http://packages.macports.org/libedit
--->  Installing libedit @20121213-3.0_0
--->  Cleaning libedit
--->  Computing dependencies for libedit
--->  Deactivating libedit @20110802-3.0_0
--->  Cleaning libedit
--->  Activating libedit @20121213-3.0_0
--->  Cleaning libedit
--->  Computing dependencies for pcre
--->  Fetching archive for pcre
--->  Attempting to fetch pcre-8.32_1.darwin_12.x86_64.tbz2 from http://packages.macports.org/pcre
--->  Attempting to fetch pcre-8.32_1.darwin_12.x86_64.tbz2.rmd160 from http://packages.macports.org/pcre
--->  Installing pcre @8.32_1
--->  Cleaning pcre
--->  Computing dependencies for pcre
--->  Deactivating pcre @8.12_1
--->  Cleaning pcre
--->  Activating pcre @8.32_1
--->  Cleaning pcre
--->  Computing dependencies for mongodb
--->  Dependencies to be installed: libpcap scons snappy v8
--->  Fetching archive for libpcap
--->  Attempting to fetch libpcap-1.3.0_0.darwin_12.x86_64.tbz2 from http://packages.macports.org/libpcap
--->  Attempting to fetch libpcap-1.3.0_0.darwin_12.x86_64.tbz2.rmd160 from http://packages.macports.org/libpcap
--->  Installing libpcap @1.3.0_0
--->  Activating libpcap @1.3.0_0
--->  Cleaning libpcap
--->  Fetching archive for scons
--->  Attempting to fetch scons-2.2.0_0.darwin_12.noarch.tbz2 from http://packages.macports.org/scons
--->  Attempting to fetch scons-2.2.0_0.darwin_12.noarch.tbz2.rmd160 from http://packages.macports.org/scons
--->  Installing scons @2.2.0_0
--->  Activating scons @2.2.0_0
--->  Cleaning scons
--->  Fetching archive for snappy
--->  Attempting to fetch snappy-1.0.5_0.darwin_12.x86_64.tbz2 from http://packages.macports.org/snappy
--->  Attempting to fetch snappy-1.0.5_0.darwin_12.x86_64.tbz2.rmd160 from http://packages.macports.org/snappy
--->  Installing snappy @1.0.5_0
--->  Activating snappy @1.0.5_0
--->  Cleaning snappy
--->  Fetching archive for v8
--->  Attempting to fetch v8-3.17.15_0.darwin_12.x86_64.tbz2 from http://packages.macports.org/v8
--->  Attempting to fetch v8-3.17.15_0.darwin_12.x86_64.tbz2.rmd160 from http://packages.macports.org/v8
--->  Installing v8 @3.17.15_0
--->  Activating v8 @3.17.15_0
--->  Cleaning v8
--->  Fetching archive for mongodb
--->  Attempting to fetch mongodb-2.4.1_0.darwin_12.x86_64.tbz2 from http://packages.macports.org/mongodb
--->  Attempting to fetch mongodb-2.4.1_0.darwin_12.x86_64.tbz2 from http://jog.id.packages.macports.org/macports/packages/mongodb
--->  Attempting to fetch mongodb-2.4.1_0.darwin_12.x86_64.tbz2 from http://mse.uk.packages.macports.org/sites/packages.macports.org/mongodb
--->  Fetching distfiles for mongodb
--->  Attempting to fetch mongodb-src-r2.4.1.tar.gz from http://distfiles.macports.org/mongodb
--->  Verifying checksum(s) for mongodb
--->  Extracting mongodb
--->  Applying patches to mongodb
--->  Configuring mongodb
--->  Building mongodb
--->  Staging mongodb into destroot
--->  Creating launchd control script
###########################################################
# A startup item has been generated that will aid in
# starting mongodb with launchd. It is disabled
# by default. Execute the following command to start it,
# and to cause it to launch at startup:
#
# sudo port load mongodb
###########################################################
--->  Installing mongodb @2.4.1_0
--->  Activating mongodb @2.4.1_0
--->  Cleaning mongodb
--->  Updating database of binaries: 100.0%
--->  Scanning binaries for linking errors: 100.0%
--->  Found 137 broken file(s), matching files to ports
--->  Found 3 broken port(s), determining rebuild order
--->  Rebuilding in order
     apache2 @2.2.22 +preforkmpm
     git-core @1.7.7.2 +doc+pcre+python27
     php5 @5.3.10 +apache2
--->  Computing dependencies for apache2
--->  Fetching archive for apache2
--->  Attempting to fetch apache2-2.2.24_0+preforkmpm.darwin_12.x86_64.tbz2 from http://packages.macports.org/apache2
--->  Attempting to fetch apache2-2.2.24_0+preforkmpm.darwin_12.x86_64.tbz2.rmd160 from http://packages.macports.org/apache2
--->  Installing apache2 @2.2.24_0+preforkmpm
--->  Cleaning apache2
--->  Computing dependencies for apache2
--->  Deactivating apache2 @2.2.22_1+preforkmpm
--->  Cleaning apache2
--->  Activating apache2 @2.2.24_0+preforkmpm
--->  Cleaning apache2
--->  Computing dependencies for git-core
--->  Dependencies to be installed: p5.12-term-readkey
--->  Fetching archive for p5.12-term-readkey
--->  Attempting to fetch p5.12-term-readkey-2.300.0_3.darwin_12.x86_64.tbz2 from http://packages.macports.org/p5.12-term-readkey
--->  Attempting to fetch p5.12-term-readkey-2.300.0_3.darwin_12.x86_64.tbz2.rmd160 from http://packages.macports.org/p5.12-term-readkey
--->  Installing p5.12-term-readkey @2.300.0_3
--->  Activating p5.12-term-readkey @2.300.0_3
--->  Cleaning p5.12-term-readkey
--->  Fetching archive for git-core
--->  Attempting to fetch git-core-1.8.2.1_0+credential_osxkeychain+doc+pcre+python27.darwin_12.x86_64.tbz2 from http://packages.macports.org/git-core
--->  Attempting to fetch git-core-1.8.2.1_0+credential_osxkeychain+doc+pcre+python27.darwin_12.x86_64.tbz2 from http://jog.id.packages.macports.org/macports/packages/git-core
--->  Attempting to fetch git-core-1.8.2.1_0+credential_osxkeychain+doc+pcre+python27.darwin_12.x86_64.tbz2 from http://mse.uk.packages.macports.org/sites/packages.macports.org/git-core
--->  Fetching distfiles for git-core
--->  Attempting to fetch git-1.8.2.1.tar.gz from http://git-core.googlecode.com/files/
--->  Attempting to fetch git-manpages-1.8.2.1.tar.gz from http://git-core.googlecode.com/files/
--->  Attempting to fetch git-htmldocs-1.8.2.1.tar.gz from http://git-core.googlecode.com/files/
--->  Verifying checksum(s) for git-core
--->  Extracting git-core
--->  Applying patches to git-core
--->  Configuring git-core
--->  Building git-core
--->  Staging git-core into destroot
--->  Installing git-core @1.8.2.1_0+credential_osxkeychain+doc+pcre+python27
--->  Cleaning git-core
--->  Computing dependencies for git-core
--->  Deactivating git-core @1.7.7.2_0+doc+pcre+python27
--->  Cleaning git-core
--->  Activating git-core @1.8.2.1_0+credential_osxkeychain+doc+pcre+python27
--->  Cleaning git-core
--->  Computing dependencies for php5
--->  Fetching archive for php5
--->  Attempting to fetch php5-5.3.23_0+apache2.darwin_12.x86_64.tbz2 from http://packages.macports.org/php5
--->  Attempting to fetch php5-5.3.23_0+apache2.darwin_12.x86_64.tbz2 from http://jog.id.packages.macports.org/macports/packages/php5
--->  Attempting to fetch php5-5.3.23_0+apache2.darwin_12.x86_64.tbz2 from http://mse.uk.packages.macports.org/sites/packages.macports.org/php5
--->  Fetching distfiles for php5
--->  Attempting to fetch php-5.3.23.tar.bz2 from http://jp.php.net/get/php-5.3.23.tar.bz2/from/this/mirror?dummy=
--->  Verifying checksum(s) for php5
--->  Extracting php5
--->  Applying patches to php5
--->  Configuring php5
Error: org.macports.configure for port php5 returned: configure failure: command execution failed
Please see the log file for port php5 for details:
    /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_lang_php5/php5/main.log
Error: Unable to upgrade port: 1
Error rebuilding php5
    while executing
"error "Error rebuilding $portname""
    (procedure "revupgrade_scanandrebuild" line 382)
    invoked from within
"revupgrade_scanandrebuild broken_port_counts $opts"
    (procedure "macports::revupgrade" line 5)
    invoked from within
"macports::revupgrade $opts"
    (procedure "action_revupgrade" line 2)
    invoked from within
"action_revupgrade $action $portlist $opts"
    (procedure "action_target" line 94)
    invoked from within
"$action_proc $action $portlist [array get global_options]"
    (procedure "process_cmd" line 95)
    invoked from within
"process_cmd $remaining_args"
    invoked from within
"if { [llength $remaining_args] > 0 } {

    # If there are remaining arguments, process those as a command
    set exit_status [process_cmd $remaining..."
    (file "/opt/local/bin/port" line 4785)
$ sudo port load mongodb

で起動時にデーモンが立ち上がるようになるみたい。

### mongodbデーモン起動

mongod でデーモン起動。

$ mongod
mongod --help for help and startup options
Sun Jun  2 09:11:40.248 [initandlisten] MongoDB starting : pid=28245 port=27017 dbpath=/data/db/ 64-bit host=clicktx-MBP.local
Sun Jun  2 09:11:40.248 [initandlisten] 
Sun Jun  2 09:11:40.248 [initandlisten] ** WARNING: soft rlimits too low. Number of files is 256, should be at least 1000
Sun Jun  2 09:11:40.249 [initandlisten] db version v2.4.1
Sun Jun  2 09:11:40.249 [initandlisten] git version: nogitversion
Sun Jun  2 09:11:40.249 [initandlisten] build info: Darwin clicktx-MBP.local 12.3.0 Darwin Kernel Version 12.3.0: Sun Jan  6 22:37:10 PST 2013; root:xnu-2050.22.13~1/RELEASE_X86_64 x86_64 BOOST_LIB_VERSION=1_49
Sun Jun  2 09:11:40.249 [initandlisten] allocator: tcmalloc
Sun Jun  2 09:11:40.249 [initandlisten] options: {}
Sun Jun  2 09:11:40.249 [initandlisten] exception in initAndListen: 10296 
*********************************************************************
 ERROR: dbpath (/data/db/) does not exist.
 Create this directory or give existing directory in --dbpath.
 See http://dochub.mongodb.org/core/startingandstoppingmongo
*********************************************************************
, terminating
Sun Jun  2 09:11:40.249 dbexit: 
Sun Jun  2 09:11:40.249 [initandlisten] shutdown: going to close listening sockets...
Sun Jun  2 09:11:40.249 [initandlisten] shutdown: going to flush diaglog...
Sun Jun  2 09:11:40.249 [initandlisten] shutdown: going to close sockets...
Sun Jun  2 09:11:40.249 [initandlisten] shutdown: waiting for fs preallocator...
Sun Jun  2 09:11:40.249 [initandlisten] shutdown: lock for final commit...
Sun Jun  2 09:11:40.249 [initandlisten] shutdown: final commit...
Sun Jun  2 09:11:40.249 [initandlisten] shutdown: closing all files...
Sun Jun  2 09:11:40.249 [initandlisten] closeAllFiles() finished
Sun Jun  2 09:11:40.249 dbexit: really exiting now

データベースのディレクトリがないみたい。

### mongodbシェルを使う

$ mongo
MongoDB shell version: 2.4.1
connecting to: test
> 

tabでコマンドの補完やカーソルキーで履歴の表示など出来る。

### チュートリアルを試してみる

[MongoDBの薄い本(The Little MongoDB Book) – cuspy diary](http://www.cuspy.org/diary/2012-04-17)


Filed under: Mac,MongoDB,インストールメモ

Trackback Uri






2012年 5月 9

※一番下の追記にありますが、Homebrewでインストールできるようになってます(2012/5/29リリース)

MySQL5.5のインストール

MANPでMySQL使えるんだけど、mroongaを(ローカルテストでも)使いたいので別にMySQLをインストールする。

ただしMySQLのバージョンは5.5をインストールしたいのでコマンドはこんな感じに。
mysql5 +server としてしまうとMySQL5.1.6が入ります。

MacBook:~ clicktx$ sudo port install mysql55 +server
Password:
--->  Deactivating mysql55 @5.5.23_0
--->  Cleaning mysql55
--->  Uninstalling mysql55 @5.5.23_0
--->  Cleaning mysql55
MacBook:~ clicktx$ sudo port install mysql55 +server
--->  Computing dependencies for mysql55
--->  Fetching archive for mysql55
--->  Attempting to fetch mysql55-5.5.23_0.darwin_10.x86_64.tbz2 from http://packages.macports.org/mysql55
--->  Fetching mysql55
--->  Verifying checksum(s) for mysql55
--->  Extracting mysql55
--->  Applying patches to mysql55
--->  Configuring mysql55
--->  Building mysql55
--->  Staging mysql55 into destroot
--->  Installing mysql55 @5.5.23_0
The mysql55 client has been installed.
To install the mysql55 server, install the mysql55-server port.
--->  Activating mysql55 @5.5.23_0
--->  Cleaning mysql55

MySQLの初期化

  • mac OSXの場合はmysqlユーザーは作成済みなので改めて作成する必要はない。
  • 実際は_mysql?mysqlでユーザー指定しても_mysqlで処理される。
MacBook:~ clicktx$ sudo -u mysql /opt/local/lib/mysql55/scripts/mysql_install_db
Password:
Installing MySQL system tables...
OK
Filling help tables...
OK

To start mysqld at boot time you have to copy
support-files/mysql.server to the right place for your system

PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !
To do so, start the server, then issue the following commands:

/opt/local/lib/mysql55/bin/mysqladmin -u root password 'new-password'
/opt/local/lib/mysql55/bin/mysqladmin -u root -h MacBook.local password 'new-password'

Alternatively you can run:
/opt/local/lib/mysql55/bin/mysql_secure_installation

which will also give you the option of removing the test
databases and anonymous user created by default.  This is
strongly recommended for production servers.

See the manual for more instructions.

You can start the MySQL daemon with:
cd /opt/local ; /opt/local/lib/mysql55/bin/mysqld_safe &

You can test the MySQL daemon with mysql-test-run.pl
cd /opt/local/mysql-test ; perl mysql-test-run.pl

Please report any problems with the /opt/local/lib/mysql55/bin/mysqlbug script!

MySQLを起動する

MacBook:~ clicktx$ sudo /opt/local/share/mysql55/support-files/mysql.server start
Starting MySQL
... ERROR! The server quit without updating PID file (/opt/local/var/db/mysql55/MacBook.local.pid).

そのまま起動すると上記のようにエラーとなってしまう(自分の環境だけ?)

デフォルトでは /opt/local/var/run/mysql55 以下にソケットファイルを作成するらしく、フォルダが無いので作成する。アクセス権も777を与える。

MacBook:~ clicktx$ sudo mkdir -m 777 -p /opt/local/var/run/mysql55

改めてMySQLを起動。

MacBook:~ clicktx$ sudo /opt/local/share/mysql55/support-files/mysql.server start
Starting MySQL
.. SUCCESS! 

成功

参考:

  • Mac OS X に MacPorts で MySQL をインストールする – make world
  • MacPortsを使ってMySQL 5をインストールする – めも帖
  • mroongaのインストール

    2. インストールガイド — mroonga v2.02 documentation

    2.11.3. 前提条件
    MySQLおよびgroongaが既にインストールされている必要があります。
    またmroongaをビルドするためにはMySQLのソースコードも必要です。

    先日groongaはインストール済み。

    先程MacPortsでインストールしたMySQLのでソースは
    /opt/local/var/macports/distfiles/mysql55/mysql-5.5.23.tar.gz
    かな?

    作業スペースを~/src にする。
    まずは作業スペースとなるsrcフォルダを作成。

    MacBook:~ clicktx$ mkdir ~/src

    MySQLのソースファイルを ~/src にコピーして解凍する

    MacBook:~ clicktx$ cp /opt/local/var/macports/distfiles/mysql55/mysql-5.5.23.tar.gz ~/src/mysql-5.5.23.tar.gz
    MacBook:~ clicktx$ cd src/
    MacBook:~ clicktx$ tar xzvf mysql-5.5.23.tar.gz

    mroongaをダウンロード&解凍

    MacBook:src clicktx$ wget http://cloud.github.com/downloads/mroonga/mroonga/mroonga-2.02.tar.gz
    MacBook:src clicktx$ tar xzvf mroonga-2.02.tar.gz 
    

    mroongaをビルドする

    MacBook:src clicktx$ cd mroonga-2.02
    MacBook:mroonga-2.02 clicktx$ ./configure PKG_CONFIG_PATH=/opt/local/lib/pkgconfig --with-mysql-source=$HOME/src/mysql-5.5.23 --with-mysql-config=/opt/local/lib/mysql55/bin/mysql_config
    MacBook:mroonga-2.02 clicktx$ make

    makeでコケる…
    googleで漁っているとこんなの発見。
    installing mroonga on Mac OS X Lion — Gist
    早速試してみる。

    MacBook:~ clicktx$ cd ~/src/mysql-5.5.23/include
    MacBook:include clicktx$ ln -s probes_mysql_nodtrace.h probes_mysql_dtrace.h
    MacBook:include clicktx$ cd ~/src/mroonga-2.02
    MacBook:mroonga-2.02 clicktx$ aclocal -I /opt/local/share/aclocal
    MacBook:mroonga-2.02 clicktx$ automake -a
    MacBook:mroonga-2.02 clicktx$ autoconf
    MacBook:mroonga-2.02 clicktx$ autoheader
    MacBook:mroonga-2.02 clicktx$ automake -a
    MacBook:mroonga-2.02 clicktx$ ./configure PKG_CONFIG_PATH=/opt/local/lib/pkgconfig --with-mysql-source=$HOME/src/mysql-5.5.23 --with-mysql-config=/opt/local/lib/mysql55/bin/mysql_config --with-mecab
    MacBook:mroonga-2.02 clicktx$ make

    コケる…

    mroongaをMac OSXでビルドするためのアドホックなパッチを書いてみた « いわぶろ(ろてん)
    ココらへんに解決策?もう神頼み。
    https://gist.github.com/1015079 を参考に、~/src/mroonga-2.02/ha_mroonga.cpp っていうファイルの560行目付近に

    static_cast(static_cast(pthread_self())),

    っていう箇所があるから、

    static_cast(static_cast((unsigned long int)pthread_self())),

    に修正。
    pthread_self で検索すると修正箇所がすぐ分かる。

    修正した後にmakeしたら見事成功。

    MacBook:mroonga-2.02 clicktx$ sudo make install
    .....
    libtool: install: ranlib /opt/local/lib/mysql55/plugin/ha_groonga.a

    インストールできたぽい。

    公式ガイドに

    その後、mysqldを起動し、mysqlクライアントで接続して”INSTALL PLUGIN”コマンドでインストールします。

    とあるので、MySQL起動してインストール&確認。

    MacBook:~ clicktx$ sudo /opt/local/share/mysql55/support-files/mysql.server start
    MacBook:~ clicktx$ /opt/local/lib/mysql55/bin/mysql -u root
    mysql> INSTALL PLUGIN mroonga SONAME 'ha_mroonga.so';
    Query OK, 0 rows affected (0.48 sec)
    
    mysql> SHOW ENGINES;
    +--------------------+---------+------------------------------------------------------------+--------------+------+------------+
    | Engine             | Support | Comment                                                    | Transactions | XA   | Savepoints |
    +--------------------+---------+------------------------------------------------------------+--------------+------+------------+
    | CSV                | YES     | CSV storage engine                                         | NO           | NO   | NO         |
    | PERFORMANCE_SCHEMA | YES     | Performance Schema                                         | NO           | NO   | NO         |
    | InnoDB             | DEFAULT | Supports transactions, row-level locking, and foreign keys | YES          | YES  | YES        |
    | MyISAM             | YES     | MyISAM storage engine                                      | NO           | NO   | NO         |
    | MRG_MYISAM         | YES     | Collection of identical MyISAM tables                      | NO           | NO   | NO         |
    | MEMORY             | YES     | Hash based, stored in memory, useful for temporary tables  | NO           | NO   | NO         |
    | mroonga            | YES     | CJK-ready fulltext search, column store                    | NO           | NO   | NO         |
    +--------------------+---------+------------------------------------------------------------+--------------+------+------------+
    7 rows in set (0.00 sec)

    なんとか入ったみたい。
    苦労した…。

    なお参考ブログに

    なお,MySQLへの組み込み後の動作については,何も確認を行っていないのであしからず,です.(影響があるとしても,ログ出力部分だけ?)

    とあるように、とりあえずmake出来て、インストールまでこぎつけたってシロモノです。

    追記:2012/6/2
    エラーが出た時にはこちらが参考になります。
    MySQL の INSTALL PLUGIN に失敗する時の処方箋(mroonga-1.20編) – よし研 -日々クリエイション-

    また、mroongaはHomebrewでインストールできるようになったみたいです。こちらの方が簡単でしょう。MacPorts使っているボクは負けg(ry
    mroonga 2.03リリース


    Filed under: Mac,MySQL,インストールメモ,開発環境

    Trackback Uri






    2011年 12月 15

    MAMP

    Apache+MySQLサーバをmacで動作させる事ができる。macにはもともとApacheもperlもインストールされているけど、バージョンが古いし、管理も面倒なのでMANPを使うメリットはおおいにあると思う。もともとはPHP+MySQLのローカル環境を構築するためのもの…かな?

    参考:Mac OS Xのローカル環境(MAMP+MacPorts)で Movable Typeを動かしてみよう – 準備編  [ 09.06.24 update ] 【 gabs.log|おしゃべり好きなWEB制作者のたわごと 】

    MAMPをインストール

    MAMP

    MAMPからダウンロードしてインストールする。

    MacPortsのインストール

    makeとか使うのでXCodeが必要。OSのバージョンにあったものをダウンロードする。

  • The MacPorts Project — Download & Installation
  • MacPortsの初期化&設定

    Terminalでコマンドを実行

    echo 'export PATH=$PATH:/opt/local/bin:/opt/local/sbin/' >> ~/.bashrc
    echo 'export MANPATH=$MANPATH:/opt/local/man' >> ~/.bashrc
    echo 'source ~/.bashrc' >> ~/.bash_profile
    sudo port -d selfupdate
    sudo port -d sync

    perlのPATHを変更

    元のperlをperl.bakにリネームして、シンボリックリンクを貼る。これをしておかないと元々インストールしてあるperl(/usr/bin/perl)を参照してしまうため。

    cd /usr/bin/
    sudo mv perl perl.bak
    sudo ln -s /opt/local/bin/perl /usr/bin/perl

    cpanmをインストール

    perlモジュールを簡単にインストールできるcpanmをインストールする。

  • ArtifactSauce: cpanmをMac OS Xにインストールする
  • sudoでインストールすると /opt/local/lib 以下にインストールされる。

    sudo cpanm Mojolicious
    or
    cpanm -S Mojolicious

    ユーザー権限でインストールした場合は、ホームディレクトリ ~/perl5/lib/ 以下にインストールされるので、この場合はPATHの指定が必要。コード側に書くか、あらかじめ設定しておく必要がある。
    Apacheのconfigに設定するのが吉かな?

    httpd.confに記述

    SetEnv PERL5LIB /Users/clicktx/perl5/lib/perl5
  • KMsWiki: Perl/@INC – Perlのライブラリの検索PATHを格納した配列のこと。 例えば、コマンド…
  • CGIでの環境変数PERL5LIBの設定 | OKWave
  • MAMPでCGI(perl)を実行できるようにする

    /Applications/MAMP/conf/apache/httpd.conf を編集する。自分の場合は /Applications/MAMP/htdocs以下全部で実行したいので以下の場所を変更。

    453行目付近

        #AddHandler cgi-script .cgi
        AddHandler cgi-script .cgi .pl .pm ←追記

    httpd.confを編集したらMANPを再起動して設定を反映させる。

    CGI実行テスト

    /アプリケーション/MAMP/htdocs/ に test.cgiを作成する。

    #!/usr/bin/env perl
    print "Content-type:text/html\n\n";
    print "Hello, World!\n";
    exit;

    test.cgi に実行権を与える。

    $ cd /Applications/MANP/htdocs
    $ chmod 700 test.cgi

    webブラウザで http://localhost/test.cgi にアクセスして表示されたら成功。

    ちなみにMAMPの読み方はまんpーでいいんじゃないでしょうか?


    Filed under: Mac,MySQL,プログラミング

    Trackback Uri