gcc 4.4.5 c89
我最近在我的開發機器上下載並安裝了log4c。 我把所有的標題,幷包括在以下目錄中。更改系統標題路徑和自定義頭文件
project_name/tools/log4c/inc
project_name/tools/log4c/libs
然而,當我安裝了頭,其中在系統路徑:
/usr/include/log4c/*.h
所以,在我的項目,當我包括layout.h。 layout.h將在這個系統路徑中包含以下頭文件。
#include <log4c/logging_event.h>
我創建的目錄結構在目標機器上,因爲我做了我的發展tools/inc
和tools/lib
。
但是,它不會編譯,因爲我沒有在目標機器上安裝log4c,因此log4c的系統路徑不存在。但是,目標機器的用戶不會期望安裝log4c。一切都應該開箱即用。
所以我認爲一個好主意是編輯所有標題。從這個:
#include <log4c/logging_event.h>
到
#include "logging_event.h"
的所有頭都在INC目錄,所以我不會使用系統路徑。
我的問題是,這是一個好主意,把所有的標題放到一個目錄中,並編輯它們以指向這個單一的inc目錄?
非常感謝任何建議,
的'-L'命令將目錄庫搜索路徑,它僅用於查找庫鏈接,而不是頭包含(見手冊頁http://linux.die.net/man/1/gcc) – 2010-10-27 22:45:55
@Jesse:謝謝!我的意思是'-I'。更正答案。 – Jander 2010-10-28 12:38:18