.c和.cpp文件的Makefile不起作用

时间:2016-12-17 17:24:29

标签: makefile

我尝试将.c和.cpp文件编译为C ++并将其构建为一个生成的二进制文件。我的Makefile看起来像这样(简化):

CFLAGS  = -Wall -fpermissive -DENV_EMBEDDED -I../utils/ -../usblib/include
CPPFLAGS = $(CFLAGS)
CXXFLAGS = $(CFLAGS)

LDFLAGS  = -lmisc -lrt

PNAME=Simulator

OBJ = simulated.o \
    buffer.o \
    common.o 

all: $(OBJ)
    $(LDFLAGS) -o $(PNAME) $(OBJ)

当我做“全力以赴”时,它抱怨“不知道如何创建目标”模拟。“”。

CFLAGS和CPPFLAGS / CXXFLAGS应该根据.c / .cpp文件自动使用 - 对吗?那么Makefile中可能出现什么问题?

谢谢!

1 个答案:

答案 0 :(得分:1)

最后我找到了我的问题的原因,它与那个有趣的C / CPP混合物无关。而不是这个文件analog.c根本没有到位:-DI知道,混合C和C ++有点奇怪但在这种情况下可以解释,C文件来自微控制器的固件,CPP文件是wxWidgets UI组件,它们都是普通PC上运行的固件的模拟器。没有任何组件可以移动到C或C ++,所有组件都必须保持原样。