8

FOO=bar ./configureとの違いは何ですか?から autoconf によって生成されるスクリプトは./configure FOO=barどこにありますか? 前者はスクリプトを実行する前に環境変数をに設定し、後者は文字列を に渡します。は変数を に等しく設定するものとしてこれを解釈する (そしてそれを覚えている?) と思いますが、それ以上のことはわかりません。特に、何らかの方法でそれを行う利点はありますか?./configureconfigure.amFOObar./configureFOO=bar./configure./configureFOObar

4

1 に答える 1

9

configureに割り当てを引数として渡すと、割り当てが で使用できるconfig.statusようになるため、 に設定されconfig.status --recheckます。これが、代入を引数として行う主な利点です。現在のautoconfのドキュメントでは、環境を介して割り当てを渡すよりもこれを推奨していることに注意してください。古いバージョンの autoconf では、configure の引数として代入を行うことができませんでした。そのため、古い configure スクリプトを実行するときは古い形式を使用する必要があり、多くの人が環境を使い続けているため、習慣が難しくなります。ただし、引数を介して代入を渡すことは良い習慣です。

于 2012-12-12T20:50:21.130 に答える