为什么要使用 `config.status --recheck`? – 因为它不*保存*任何东西

Why is `config.status --recheck` being used at all? – because it doesn't *save* anything

我只是 运行 ./config.status --recheck,它没有考虑我对 configure 脚本所做的更改 – 即:Makefile还没有重新生成。

我很纳闷……那这个脚本有什么用呢?它会自动检测 make 上的更改,然后重新 运行s ./configure 并从磁盘中召回和重用所有选项,但 这就是它所做的一切 – 此操作的结果 未保存 到磁盘......那么 I've had detected some changes to the build scripts 有什么用?

It automatically detects changes on make so that it then re-runs ./configure with all the options recalled and reused from the disk

这似乎是一个非常好的用例。

如果您修复了构建系统中的某些内容并想要重建,您很可能希望保留上次 运行 时传递给 configure 的所有选项。

the result of this operation isn't saved to the disk

这不是真的。 ./config.status --recheck 使用 --no-create 选项执行 运行 configure,表示“不创建输出文件”,但这只对了一半:它 执行 更新 config.status 脚本本身。

通常您不会 运行 config.status 手动,但它会被 make 自动调用。然后 make 通常也会调用刚刚更新的 config.status (没有 --recheck 标志),这反过来 更新你的 Makefile. 然后它将使用更新后的 Makefile.

构建项目