- 締切済み
BIND-9.6.1-P1でコンパイルエラー
先日、BINDでセキュリティの脆弱性が発見されたため、バージョンアップを行おうと、BIND-9.6.1-P1のsourceをISCからDownloadしてきました。で、展開後に./configure、makeとしたところ、lib/dns/genを作成するところで、Segmentation違反(signal 11)でエラーが発生し、コンパイルが完了できませんでした。 以前、正しくコンパイルされたはずのBIND-9.5.0-P1を改めてコンパイルしてみたところ、こちらも同じ場所でエラーになります。調べてみたところ、コンパイルだけなら問題なく実行されるのですが、ldを使用してリンクする箇所にくると、エラーとなってしまうようです。(gen moduleを以前、コンパイルしたもので置いて強制的に先に進めたところ、次のリンクで同様にエラー・・・) ldが壊れたのかと思い、Hello,C world!をコンパイルしてみたところ、問題なく実行moduleが生成されます。じゃあ、ライブラリが壊れているのかと思い、rpm -qsコマンドで、以下のパッケージを検査しましたが、問題ない(通常)と返って来ます。 rpm -qs binutils-2.15.92.0.2-5vl2 rpm -qs glibc-2.3.4-2vl3 環境はVineLinux4.2、カーネル版数は2.6.16-0vl68を使用しています。これ以上、調べる対象が思いつかず、なにかヒントだけでも頂けないでしょうか。(ちなみに、BINDの脆弱性は、仕方なく対処版のrpmを持ってきてインストール。問題なく動作しています)
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- dora0822
- ベストアンサー率66% (2/3)
こんばんは。 セグメンテーション違反とのことですから、なんらかのライブラリを利用する際に落ちているような感じですね。 気になるのは、OpenSSLのモジュールです。 私は、CentOSやRHELで環境を作る際には、OpenSSLをソースからコンパイルしてインストール後、bindをconfigureをする際に、「--with-openssl=/usr/local/ssl」というのを入れています。(OpenSSLを/usr/local/sslに入れている場合) これで、試してみるとどうなりますでしょうか?
お礼
色々と試していたのですが、どれもいまひとつうまくいかず、straceでリンクプロセスを追っていたところ、なんだか/tmpにファイルを書き出そうとするところで失敗して、落ちていることが分かりました。 で、また調べたのですが結局原因は分からず、メモリ周りでおかしくなっているのかと思い、OSごと再起動してみたところ、なぜかうまくいってしまいました。ちょっと腑に落ちませんが、とりあえず問題は解決と言うことで。 アドバイス、ありがとうございました。