在makefile中經常會看到這些選項,gcc默認會在程序當前目錄、path路徑中查找所需要的材料
如何給gcc添加我們自己的原材料(頭文件,庫等)
- -I (注意是大寫的i) 給gcc添加自定義的頭文件的路徑
例如:我的頭文件目錄是myinclude
-Imyinclude
- -L 給gcc添加額外的搜索庫的路徑
例如 :有一個庫A所在的路徑是目錄B
-LB
- -l(小寫的L) 給gcc 指定具體的庫
例如:gcc需要一個庫A
-lA
整體舉例:
CC=g++
CFLAGS=-g
BIN=main
OBJS=main.o
LIBS=-I/usr/include/mysql -L/usr/lib64/mysql -lmysqlclient -ljsoncpp -lpthread -std=c++11
$(BIN):$(OBJS)
$(CC) $(CFLAGS) $^ -o $@
%.o:%.cpp
$(CC) $(CFLAGS) -c $< -o $@ $(LIBS)
.PHONY:clean
clean:
rm -f *.o $(BIN)