簡體   English   中英

使用makefile鏈接期間出錯:Ubuntu

[英]Error during linking using makefiles: Ubuntu

我有以下兩個項目:

`/home/jagbirs/Downloads/sample/SampleExtLib1` containing: 

ext_lib1.c
ext_lib1.h
Makefile 

/home/jagbirs/Downloads/sample/SampleMakeTest包含:

main.c
Makefile

我正在學習如何鏈接外部庫。 我在ext_lib1.h中有一個函數

在main.c中使用,但在make后出現以下錯誤:

gcc -o main main.c -L/home/jagbirs/Downloads/sample/SampleExtLib1 -lext_lib1 
main.c:10:22: fatal error: ext_lib1.h: No such file or directory
compilation terminated.
make: *** [all] Error 1

這兩個生成文件如下:SampleMakeTest / Makefile:

LIB = main
SRC := main.c
CFLAGS := -I../SampleExtLib1

all: $(SRC)
    gcc -o $(LIB) $(SRC) -L/home/jagbirs/Downloads/sample/SampleExtLib1 -lext_lib1 

clean: 
    rm -f *.o

SampleExtLib1 / Makefile:

all: ext_lib1.o
    ar r libext_lib1.a ext_lib1.o

clean: 
    rm -f *.o *.a

可以請我幫忙弄清楚為什么鏈接不正確嗎? 謝謝

嘗試添加-I以包括該庫的.h文件:

gcc -o $(LIB) $(SRC) -I/home/jagbirs/Downloads/sample/SampleExtLib1 -L/home/jagbirs/Downloads/sample/SampleExtLib1 -lext_lib1

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM