makefile中'LDFLAGS'的正确用法

makefile中'LDFLAGS'的正确用法,makefile,Makefile,首先,所讨论的makefile大致如下(我正在写下我的内存): LDFLAGS默认为空字符串,因此我们仍然可以在链接步骤中使用它 但是我不确定我是否正确。编译标志在LDFLAGS中没有任何作用,这是对的。只需显式定义LDFLAGS,以便其他编辑器(或您自己,当一段时间过去时)可以一眼看出1。它是空的和2。在何处修改它(如添加-s,这是很常见的) CXX=g++ CXXFLAGS=-c -Wall -std=c++11 -O3 LDFLAGS=-Wall -std=c++11 -O3 all:

首先,所讨论的makefile大致如下(我正在写下我的内存):

LDFLAGS
默认为空字符串,因此我们仍然可以在链接步骤中使用它


但是我不确定我是否正确。

编译标志在
LDFLAGS
中没有任何作用,这是对的。只需显式定义
LDFLAGS
,以便其他编辑器(或您自己,当一段时间过去时)可以一眼看出1。它是空的和2。在何处修改它(如添加
-s
,这是很常见的)

CXX=g++
CXXFLAGS=-c -Wall -std=c++11 -O3
LDFLAGS=-Wall -std=c++11 -O3

all: clean car.out

clean:
    rm -f *.o *.out


car.out: a.o b.o
    $(CXX) -o $@ $(LDFLAGS) $^

a.o: a.cpp
    $(CXX) $(CXXFLAGS) $<

b.o: b.cpp
    $(CXX) $(CXXFLAGS) $<
CXX=g++
CXXFLAGS=-Wall -std=c++11 -O3

all: clean car.out

clean:
    rm -f *.o *.out


car.out: a.o b.o
    $(CXX) -o $@ $(LDFLAGS) $^

a.o: a.cpp
    $(CXX) -c $(CXXFLAGS) $<

b.o: b.cpp
    $(CXX) -c $(CXXFLAGS) $<