Configure

知道編譯後配置腳本使用了哪些標誌

  • September 24, 2020

假設我正在編譯一些應用程序(C 中的程式碼庫,使用 gcc 作為預設編譯器,從 github 複製的 git ……)並做./configure --flags1 --flags2 ...

編譯完成後,我想知道我使用的標誌./configure(在這個假設的情況下,我無法通過查看我的 shell 歷史來知道它失去了)。

標誌列表可能很長,我不想浪費時間尋找這些標誌(特別是因為有些標誌無法在前面提到的應用程序中記錄)。

有什麼方法可以知道用於已編譯應用程序的標誌?也許通過查看./configure生成的任何文件?

他們在config.log

head -n8 config.log
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.

It was created by configure, which was
generated by GNU Autoconf 2.52.20190901.  Invocation command line was

 $ ./configure --enable-trace

您可以使用 Makefile 中的一些 sed 輕鬆解析它,並將該資訊作為字元串包含在二進製文件中。不過,我不知道是否有任何其他程序這樣做;-)

引用自:https://unix.stackexchange.com/questions/611244