私はBLFS(Linux From Scratch)システムの一部としてソースからGnuTLSパッケージをコンパイルしようとしました。ここLFSページです。
そのページにリストされているすべての必須パッケージと推奨パッケージをインストールしましたが、スクリプト出力に./configure
基づいてGnuTLSソースツリーの上部で実行すると、valgrind、libunistringなどの複数のパッケージが見つからないようです。 、libtasn1。
だから、設定スクリプトがうまくいかないと思うなら、この問題を解決するための最良の方法は何ですか?私はそれを調べてみましたがconfig.log
それほど役に立たないようです(少なくともvalgrindの場合)。また、構成スクリプト自体を調べましたが、40,000行を超えるモンスターです。
まあ、私は少し愚かで構成スクリプトを誤解したと思います。構成の概要には次のように記載されています。
configure: summary of build options:
version: 3.5.14 shared 44:6:14
Host/Target system: x86_64-pc-linux-gnu
Build system: x86_64-pc-linux-gnu
Install prefix: /usr
Compiler: gcc
Valgrind: no
CFlags: -g -O2
Library types: Shared=yes, Static=no
Local libopts: yes
Local libtasn1: no
Local unistring: no
Use nettle-mini: no
Documentation: yes (manpages: yes)
私はこれがパッケージが見つからないことを意味すると思います。 (私は「ローカル」を「私のコンピュータに」を意味すると解釈します)。しかし、出力をより詳細に検索して、次のことを見つけました。
checking for LIBTASN1... yes
checking whether to use the included minitasn1... no
checking for libunistring... yes
checking how to link with libunistring... /usr/lib/libunistring.so
これらのパッケージが見つかったようで、要約の「ローカル」はこれらのライブラリのGnuTLS独自の組み込みバージョンを参照する必要があります。その時はちょっと混乱していましたが、今は理解できますね。 Valgrindの場合、次のように表示されます。
checking for valgrind... valgrind
checking whether self tests are run under valgrind... no
だから私は再び見つけたようですが、何らかの理由でそれ自体のテストに使用したくないようです。
とにかく、ビルドを続けてテストが大丈夫かどうかを確認します。
答え1
config.log
失敗の正確な理由を含める必要がありますが、configure
見つけるのは難しいかもしれません。これを行うには、config.log
の終わりから始める必要があります。configure
停止すると、完全な状態のダンプが表示されます。これは難しいことですが、スキップすると主なバグが見つかるはずですconfigure
。見つけてRunning config.status
上にスクロールします...
Autoconfで生成された設定configure
自体を読み取るにはあまり意味がありません。ソースコードconfigure.ac
(またはconfigure.in
古いソフトウェアの場合)とそのファイルを見ると.m4
便利です。