Possible Duplicate:
Linking apache libraries連接libaries和makefile文件
GCC指定路徑4.4.2 C89
我想在我的頭文件中的一些頭文件和庫鏈接。但由於某種原因,我的程序似乎沒有鏈接。
我在我的src目錄/包括/ APR的src /庫
我編寫的庫,把它們在我的庫和我已經把標題中包含目錄。
我的可執行文件位於src目錄中。
在我的makefile我已經指定了這一點:
LIBS_PATH -L./lib
INC_PATH -I./include
LIBS = -libapr-1
所以當前目錄中可執行文件的執行。
在我的lib文件夾我已經叫下面的庫:
libapr-1.so
在我包括/ APR文件夾中,我有以下的頭文件:
apr.h
該計劃得到頭文件。但我不認爲它是鏈接庫,因爲我沒有得到任何錯誤,說它找不到頭文件。
在我包括我也做了頭文件這個
#include <apr/apr.h>
我得到這個以下錯誤信息:
In file included from include/apr.h:17,
./include/apr/apr.h:285: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘apr_int32_t’
非常感謝您的任何建議和意見,
編輯:
LIBS_PATH -L./lib
INC_PATH -I./include
LIBS = -lapr
錯誤: 在/ usr /斌/勞工處:找不到-lapr
的Makefile:
OBJECT_FILES = dlg_fsm.o
CFLAGS = -ggdb -Wall
FLATFORM = -DLINUX
CC = gcc
LIBS_PATH = -L./lib
INC_PATH = -I./include
LIBS = -lapr
dlg: $(OBJECT_FILES)
$(CC) $(CFLAGS) $(LDFLAGS) $(OBJECT_FILES) $(FLATFORM) $(INC_PATH) $(LIBS_PATH) $(LIBS) -o dlg
您是否收到任何有關缺少頭文件的錯誤消息? – 2010-01-20 10:19:07
你有一些令人困惑的文件名:include/apr.h和include/apr/apr.h - 我想知道是否會出現一些混淆?也許標題衛兵變得困惑? – 2010-01-20 10:20:40
你是從你下載和編譯的目錄中建立你的庫嗎?您應該安裝apr,然後使用安裝的文件。這可能是因爲你已經安裝了舊版本的apr,並且包含錯誤的頭文件。 – 2010-01-20 10:36:58