Makefile
ifeq ($(wifiSim),1)
WIFISIM :=1
endif
all: test.cpp
test.cpp : test.o
./a.out
test.o :
c++ test.cpp
test.cpp
#include <iostream>
using namespace std;
int main()
{
#ifdef WIFISIM
cout << "Inside wifisim = 1" << endl;
#else
cout << "Outside wifisim = 1" << endl;
#endif
return 0;
}
我希望在test.cpp中使用WIFISIM。我执行了“make wifiSim=1 all”,但是test.cpp中的else语句被执行了。 有没有办法在不改变test.cpp编译方式的情况下实现?因为我需要在许多文件中使用WIFISIM标志,而且我不想改变编译方式。
WIFISIM
的值?你在哪里告诉c++
它的值? - Etan Reisner-DWIFISIM
,并将其添加到编译器标志中。 - πάντα ῥεῖ