我需要在我的C程序中使用一些C ++代码,这些代码必须与arm-none-eabi工具链进行交叉编译。我首先尝试以下简单程序:
main.c中
int main(){ …
你正在联系 CC ,你必须链接 CXX - 它不仅是你不应该添加每行参数 CFLAGS , CXXFLAGS 。
CC
CXX
CFLAGS
CXXFLAGS
hello_world_mix: misc.o main.o $(CXX) $(CFLAGS) $^ -o $@ main.o: main.c $(CC) -c $(CFLAGS) $^ -o $@ misc.o: misc.cpp $(CXX) -c $(CXXFLAGS) $^ -o $@ clean: rm -f *.o rm -f *~
原因很可能就是排序 -l 选项可能很重要 一些 GCC版本,而不是其他版本。 - 但让g ++担心这一点更容易。
-l