Compiling
如何在 ./configure 中放置多個 -I、-L 和 -l 標誌?
我正在嘗試使用
./configure
.我有
- 三個包含目錄
-I/path1/include -I/path2/include -I/path3/include
- 兩個連結目錄
-L/path1/lib -L/path2/lib
- 兩個
-l
標誌選項-ltensorflow -lasan
- 兩個編譯標誌
-O3 -g
我怎樣才能有效地將所有這些標誌作為選項放入
./configure
?
執行此操作的規範方法是為呼叫中的各種變數提供值:
./configure
./configure CPPFLAGS="-I/path1/include -I/path2/include -I/path3/include" \ CFLAGS="-O3 -g" \ LDFLAGS="-L/path1/lib -L/path2/lib" \ LIBS="-ltensorflow -lasan"
如果使用 C++ 編譯器,請指定
CXXFLAGS
而不是(或除了)CFLAGS
。這些變數也可以在環境中設置,但推薦的做法是將它們指定為命令行參數,以便將它們的值儲存起來以供重複使用。有關詳細資訊,請參閱配置編譯時強制覆蓋(例如 CXXFLAGS 等)。
請注意,在大多數情況下,將這麼多路徑指定為標誌是不尋常的。相反,我希望找到
--with
選項來告訴configure
腳本在哪裡可以找到各種依賴項。例如,--with-tensorflow=/path/to/tensorflow
這將導致設置適當的-I
和-L
標誌。跑./configure --help
查看可用的選項。