小副川といいます。 私は,ワークステーションとしてインストールせず, フルインストールを選択してインストールしました。 しかしながら,apache2-2.2.3-0vl3.src.rpmをリビルドして要求された develパッケージのみをaptでインストールしたところ,岡本さんと 同じ結果になったので調べてみました。 結論からいいますと,私の場合, ・pcre-develパッケージ ・sqlite3-develパッケージ のふたつのパッケージが必要でした。 長くなりますが,以下に,今回,追加したふたつのパッケージをどうやって 見つけたのかを書いておきます。 (エラーメッセージは,適当に改行しています) --8<--8<--8<--8<-ここから-8<--8<--8<--8<-- (1)apache2-2.2.3-0vl3.src.rpmファイルをリビルドしたときに 要求してきた次の7つのパッケージをaptでインストールした。 ・db4-devel ・expat-devel ・openldap-devel ・apr-devel ・apr-util-devel ・zlib-devel ・openssl-devel このとき,openldap-develをインストールするため,自動的に cyrus-sasl-develもインストールされた。 (2)再度,apache2-2.2.3-0vl3.src.rpmをリビルドした。 ====ここから==== $ rpm -rebuild apache2-2.2.3-0vl3.src.rpm [Enter] (省略) checking for gcc... gcc checking for C compiler default output file name... a.out checking whether the C compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ANSI C... none needed checking how to run the C preprocessor... gcc -E checking for pcre-config... false configure: Configuring PCRE regular expression library configuring package in srclib/pcre now ../configure: line 1: cd: ../srclib/pcre: No such file or directory /configure: /configure: No such file or directory configure failed for srclib/pcre エラー: /var/tmp/rpm-tmp.66462 の不正な終了ステータス (%build) RPM ビルドエラー: /var/tmp/rpm-tmp.66462 の不正な終了ステータス (%build) $ ====ここまで==== このメッセージは,岡本さんがapache2-2.2.3-0vl3.src.rpmを リビルドされたときに出力されたメッセージと同じだった。 この出力されたメッセージの中の 「configuring package in srclib/pcre now ../configure: line 1: cd: ../srclib/pcre: No such file or directory /configure: /configure: No such file or directory configure failed for srclib/pcre」 に注目した。私のマシンには,pcreパッケージはインストールされていたが, pcre-develパッケージは,インストールされていなかったため, pcre-develが必要だと判断した。 そこで,aptにて,pcre-develパッケージをインストールした。 ====ここから==== $ apt-get install pcre-devel [Enter] ====ここまで==== (3)pcre-develパッケージをインストール後,再度,apache2をリビルドした。 ====ここから==== $ rpm -rebuild apache2-2.2.3-0vl3.src.rpm [Enter] (省略) r -I/home/hogehoge/rpm/BUILD/httpd-2.2.3/modules/proxy/../generators -I/usr/include/openssl -I/home/hogehoge/rpm/BUILD/httpd-2.2.3/modules/ssl -I/home/hogehoge/rpm/BUILD/httpd-2.2.3/modules/dav/main -prefer-non-pic -static -c /home/hogehoge/rpm/BUILD/httpd-2.2.3/support/htpasswd.c && touch htpasswd.lo /usr/lib/apr-1/build/libtool --silent --mode=link gcc -pthread -I/usr/include/pcre -O2 -m32 -march=i386 -mcpu=i686 -o htpasswd htpasswd.lo -lm -L/usr/lib -lpcre /usr/lib/libaprutil-1.la /usr/lib/libapr-1.la libtool: link: cannot find the library `/usr/lib/libsqlite3.la' make[2]: *** [htpasswd] エラー 1 make[2]: ディレクトリ `/home/hogehoge/rpm/BUILD/httpd-2.2.3/mpm-worker/support' から出ます make[1]: *** [all-recursive] エラー 1 make[1]: ディレクトリ `/home/hogehoge/rpm/BUILD/httpd-2.2.3/mpm-worker/support' から出ます make: *** [all-recursive] エラー 1 エラー: /var/tmp/rpm-tmp.53944 の不正な終了ステータス (%build) RPM ビルドエラー: /var/tmp/rpm-tmp.53944 の不正な終了ステータス (%build) $ ====ここまで==== エラーメッセージの 「libtool: link: cannot find the library `/usr/lib/libsqlite3.la'」 に注目した。そして,次の手順で足りないパッケージを絞りこんだ。 ====ここから==== $ apt-cache search libsqlite3 [Enter] sqlite3 - SQLite は組み込み型SQLデータベースエンジンを実装するCライブラリです。 $ apt-cache search sqlite3 [Enter] sqlite3 - SQLite は組み込み型SQLデータベースエンジンを実装するCライブラリです。 sqlite3-devel - sqlite3の開発用ヘッダファイル及びライブラリ sqlite3-tcl - SQLiteのTclクライアントライブラリ gambas2-gb-db-sqlite - Gambas データベースコンポーネント用の SQLite ドライバ koffice - KDE 向け統合オフィススイート $ ====ここまで==== sqlite3パッケージは,インストールされていたので,他に必要と考えられる パッケージは,sqlite3-develと判断した。そこで,aptにてsqlite3-develパッケージを インストールした。 ====ここから==== $ apt-get install sqlite3-devel [Enter] ====ここまで==== (4)sqlite3-develパッケージをインストール後,apache2をリビルドした。 ====ここから==== $ rpm -rebuild apache2-2.2.3-0vl3.src.rpm [Enter] (省略) Requires(post): /bin/sh Requires: httpd make httpd-mmn = 20020903 libc.so.6 libc.so.6(GLIBC_2.0) libc.so.6(GLIBC_2.1) libc.so.6(GLIBC_2.1.3) libcrypto.so.4 libpthread.so.0 libssl.so.4 パッケージに未収録のファイルを検査中: /usr/lib/rpm/check-files /var/tmp/apache2-2.2.3-root 書き込み完了: /home/hogehoge/rpm/RPMS/i386/apache2-2.2.3-0vl3.i386.rpm 書き込み完了: /home/hogehoge/rpm/RPMS/i386/apache2-devel-2.2.3-0vl3.i386.rpm 書き込み完了: /home/hogehoge/rpm/RPMS/i386/apache2-manual-2.2.3-0vl3.i386.rpm 書き込み完了: /home/hogehoge/rpm/RPMS/i386/mod_ssl-apache2-2.2.3-0vl3.i386.rpm 実行中(%clean): /bin/sh -e /var/tmp/rpm-tmp.20847 + umask 022 + cd /home/hogehoge/rpm/BUILD + cd httpd-2.2.3 + rm -rf /var/tmp/apache2-2.2.3-root + exit 0 実行中(--clean): /bin/sh -e /var/tmp/rpm-tmp.65980 + umask 022 + cd /home/hogehoge/rpm/BUILD + rm -rf httpd-2.2.3 + exit 0 $ ====ここまで=== 無事に,/home/hogehoge/rpm/RPMS/i386ディレクトリにapache2関連のパッケージが作成された。 --8<--8<--8<--8<-ここまで-8<--8<--8<--8<-- わかりにくい部分があるかもしれませんが,参考になれば幸いです。 On Mon, 5 Feb 2007 23:18:04 +0900 "Tatsushi Okamoto" <tatsushi.okamoto@xxxxxxxxx> wrote: > 岡本と申します。 > > apache2のSRPMパッケージのリビルドを行いたいのですが、リビルドが通りません。 > > $ rpm --rebuild apache2-2.2.3-0vl3.src.rpm > 中略 > > checking for gcc option to accept ANSI C... none needed > checking how to run the C preprocessor... gcc -E > checking for pcre-config... false > configure: Configuring PCRE regular expression library > configuring package in srclib/pcre now > ../configure: line 1: cd: ../srclib/pcre: No such file or directory > /configure: /configure: No such file or directory > configure failed for srclib/pcre > エラー: /var/tmp/rpm-tmp.41004 の不正な終了ステータス (%build) > > RPM ビルドエラー: > /var/tmp/rpm-tmp.41004 の不正な終了ステータス (%build) > > 環境はワークステーションとしてインストールし、リビルド時に要求されるままに、 > -develパッケージを入れてあります。 > なにか足りないパッケージがあるのでしょうか? > > /srclib/pcre > というディレクトリがないためにエラーになっているようですが、 > httpd-2.2.3.tar.bz2を展開した中には該当するディレクトリがありますが... > --- OSOEGAWA H.