首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

初学者又来问:GCC 编译器编译时怎么按扩展名查找源文件

2012-04-21 
菜鸟又来问:GCC 编译器编译时如何按扩展名查找源文件如果我手工写个 makefile 来编译是可以指定编译 *.m

菜鸟又来问:GCC 编译器编译时如何按扩展名查找源文件
如果我手工写个 makefile 来编译是可以指定编译 *.m 源文件的,但我现在用 Eclipse CDT,而且Object-C源码是生成的,同时包括 .c 和 .m 两种源文件,不知道怎么告诉 makefile 把 .m 文件也当成 .c 一样地去编译。

哪位大侠知道有没有gcc 命令行参数告诉 GCC 两种扩展名都是源文件,让GCC把两种扩展名都当成 .c 一样处理?
我这源代码都是自动生成的,我不想每次都去把文件改名。

CC=/usr/local/bin/arm-apple-darwin9-gcc
CXX=/usr/local/bin/arm-apple-darwin9-g++
LD=$(CC)
LDID=/usr/local/bin/arm-apple-darwin9-ld

all: HelloWorld

HelloWorld: HelloWorld.o
$(LD) $(LDFLAGS) -o $@ $^

%.o: %.m
$(CC) -c $(CFLAGS) $(CPPFLAGS) $< -o $@

clean:
rm *.o HelloWorld


[解决办法]
$(CC) -c -std=c99 $(CFLAGS) $(CPPFLAGS) $< -o $@

[解决办法]
makefile 里 把 %.o: %.m 那两行copy一下,改成 %.o: %.c

%.o: %.c
$(CC) -c $(CFLAGS) $(CPPFLAGS) $< -o $@

热点排行