如题,代码如下:
Makefile文件:
ARCH := $(shell arch)
ifeq ($(ARCH), "x86_64")
SETTING := 1
else
SETTING := 0
endif
CXX := g++ -std=c++11
CFLAGS := -Wall -g -O2 -DSETTING
ALL = main
OBJECT = main.o
LIBS =
%.o:%.cpp
$(CXX) -c $^ -o $@ $(LIBS) $(CFLAGS)
$(ALL):$(OBJECT)
$(CXX) -o $@ $^ $(LIBS) $(CFLAGS)
.PHONY:clean
clean:
rm -rf $(ALL) $(OBJECT)
main.cpp文件:
#include <iostream>
using namespace std;
int main()
{
cout << "Hello World!" << endl;
#ifdef SETTING
cout<<"setting = 1"<<endl;
#else
cout<<"setting = 0"<<endl;
#endif
return 0;
}