サーバに Apache 等をソースからインストールするのだが、今回はインストールソフトウェアの管理に porg(Source Code Package Organizer)を使おうと思う。
porg は「ソースコードからビルドを行ったパッケージソフトウェアなどを管理するためのパッケージ管理ツール」だそうだ。
パッケージ化したソフトウェア情報を参照したり(インストールされたファイルの一覧や、コンパイルオプションなども見れる)、アンインストールをしたり出来るげな。
今まで一度も使ったことがないし、当然インストールをしたこともないので、ここにメモっておく。
1.ソースのダウンロード
# cd /usr/local/src# wget --no-check-certificate https://sourceforge.net/projects/porg/files/porg-0.10.tar.gz
2.ソースの展開とディレクトリ移動
3.configure の実行# tar xvfz porg-0.10.tar.gzporg-0.10/porg-0.10/ChangeLog.pacoporg-0.10/aclocal.m4porg-0.10/doc/porg-0.10/doc/index.htmlporg-0.10/doc/porgrc.5.inporg-0.10/doc/porgball.8.inporg-0.10/doc/grop.png<略>porg-0.10/grop/porgball.hporg-0.10/grop/lock.hporg-0.10/grop/preferences.hporg-0.10/INSTALLporg-0.10/config-bot.h.in# cd porg-0.10
CentOS 6.5 環境 + g++ 4.4.7 という環境だが、そのまま configure を行うと、cc1plus: error: unrecognized command line option "-std=c++11"というエラーが出てしまう。このサイトによると、4.4系だと -std=c++0x にしろということのようなので、そのように修正する。configure ファイルの 17,437行目をMY_CXXFLAGS="$MY_CXXFLAGS -ansi -pedantic -Wall -fno-operator-names -std=c++0x -Wno-deprecated-declarations"と修正した。で、configure 実行。# ./configure --prefix=/usr/local --disable-gropFHS(Filesystem Hierarchy Standard)的には --sysconfdir=/etc を付けるべきだったが、ま、いっか(^^;
4.make とインストール
# makemake install 時に porg 自体も porg でパッケージとして管理するため、make したばかりの porg を使って make install を行う。# ./porg/porg -lD make installオプションの意味は、'l'がログを取る、'D'がディレクトリ名(porg-0.10)をパッケージ名にするという意。
以上でインストールは終了なので、実際に porg が porg 自身によって管理されているか見てみる。
# porg -f porgporg-0.10:/usr/local/bin/paco2porg/usr/local/bin/porg/usr/local/bin/porgball/usr/local/etc/bash_completion.d/porg_bash_completion/usr/local/etc/porgrc/usr/local/lib/libporg-log.a/usr/local/lib/libporg-log.la/usr/local/lib/libporg-log.so/usr/local/lib/libporg-log.so.0/usr/local/lib/libporg-log.so.0.0.0/usr/local/share/man/man5/porgrc.5/usr/local/share/man/man8/porg.8/usr/local/share/man/man8/porgball.8/usr/local/share/porg/README/usr/local/share/porg/download.png/usr/local/share/porg/faq.txt/usr/local/share/porg/index.html/usr/local/share/porg/porg.png/usr/local/share/porg/porgrc
パッケージ名 porg-0.10 でインストールされたファイルの一覧が取得できた。
バッチリ。
コメントする