end0tknr's kipple - 新web写経開発

http://d.hatena.ne.jp/end0tknr/ から移転しました

apache2.2にmod_perlを静的moduleとしてinstall

PCを買い換え、ついでにcolinuxapache+mod_perlを再installしたので、メモしておきます。

これまでapache2.0系を使用していましたが、「そろそろapache2.2系にしようかな」と思い、apache2.2.11にmod_perl2.0.4を静的にinstallしています。

$ tar -zxvf httpd-2.2.11.tar.gz
$ tar -zxvf mod_perl-2.0-current.tar.gz
$ cd mod_perl-2.0.4
$ /usr/local/bin/perl Makefile.PL \
    MP_USE_STATIC=1 \
    MP_AP_PREFIX=../httpd-2.2.16 \
    MP_AP_CONFIGURE="--prefix=/home/endo/local/apache22 \
                     --with-ldap --enable-authnz-ldap=shared \
                     --enable-ldap=shared \
                     --with-mpm=prefork \
                     --enable-so"
$ make
$ make test
 # apacheは/home/endo/local/apache22ですが
 # mod_perlは/usr/local/bin/perlなのでrootになります
# make install

apacheのMPMに関しては、以前、紹介しているので、そちらをご覧ください。
http://d.hatena.ne.jp/end0tknr/20090107/1231275627

2011/8/19追記

configure時に mod_so関連のerrorがでたけど、なぜだろう?

$ /usr/local/bin/perl Makefile.PL \
    MP_USE_STATIC=1 \
    MP_AP_PREFIX=../httpd-2.2.19 \
    MP_AP_CONFIGURE="--prefix=/home/endo/local/apache22 \
                     --with-mpm=prefork \
                     --enable-so \
                     --with-ldap --enable-authnz-ldap=shared \
                     --enable-ldap=shared "

configure: error: mod_so has been requested but cannot be built on your system
$ /usr/local/bin/perl Makefile.PL \
    MP_USE_STATIC=1 \
    MP_AP_PREFIX=../httpd-2.2.19 \
    MP_AP_CONFIGURE="--prefix=/home/endo/local/apache22 \
                     --with-mpm=prefork \
                     --with-ldap --enable-authnz-ldap=shared \
                     --enable-ldap=shared "

configure: error: shared objects have been requested
   but cannot be built since mod_so cannot be built
$ /usr/local/bin/perl Makefile.PL \
    MP_USE_STATIC=1 \
    MP_AP_PREFIX=../httpd-2.2.19 \
    MP_AP_CONFIGURE="--prefix=/home/endo/local/apache22 \
                     --enable-proxy \
                     --with-mpm=prefork "

OK