Apacheでモジュールをインストールする際に、apxsってやつを使うみたいだから探したのに見つからない!という場合の解決方法です。
apxsって何ですか?
apxsというのは「APache eXtenSion tool」の略らしいです。もはや原型を察することができない、ずいぶんな略し方ですね(笑)
で、何をするツールなのかというと、apacheにモジュールを追加するツール。正確にはDSOモジュールをビルドしてインストールしてくれるツールです。
apxsが存在しない理由
apache(httpd)は存在しているのに、どうしてapxsが存在しないのか?
その理由は含まれているパッケージが違うからでした。httpdに関連するパッケージには(たぶん)主に3つあって「httpd」「httpd-tools」「httpd-devel」です。
このうち、apache(httpd)をインストールした際に入るのは「httpd」と「httpd-tools」だけ。「httpd-devel」はインストールされない。
ところが、apxsは「httpd-devel」に含まれている、というわけです。
解決方法
apxsが含まれているhttp-develというパッケージをインストールしてあげればOK。以下はyumを使ってhttpd-develをインストールする場合です。
# yum install httpd-devel
これで、私の場合は「/usr/sbin」以下にapxsができました。
余談ですが、develというのはdeveloperの略なんですね。なんとなくわかっていたけど、いま明確にわかりました(笑)
つまり、apxsは開発者ツールとして位置づけられているということか。ふむふむ。
httpd-develのインストールがうまくいかない場合
すごく簡単に解決しました風に書きましたが、実は私の場合はパッケージの依存関係の問題で、本当はすぐにはhttp-develがインストールできませんでした。
端的にいうと、httpd-develが依存しているパッケージの一部が新しすぎて、httpd-develがインストールできなかった、という感じ。
最終的には、いくつかのパッケージをダウングレードすることで問題が解決しました!
その時の奮闘記はこちら↓
[CentOS] yumでhttp-develをインストール失敗と解決方法
おしまい
モジュールを追加しようと思ったらapxsがなくて、apxsをインストールするには…とやってると、段々もともと何がしたかったのかわからなくなりますよね。
そんなITあるあるネタでした。。