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

makefile文件中的这句代表什么意思?该如何解决

2012-02-26 
makefile文件中的这句代表什么意思?OBJS ${ASMS:.S.o} ${SRCS:.c.o}其中ASMSSRCS定义为一个.c文件我

makefile文件中的这句代表什么意思?

OBJS = ${ASMS:.S=.o} ${SRCS:.c=.o}
其中
ASMS=
SRCS定义为一个.c文件
我看到makefile文件中没有任何gcc的编译命令如何生成 .o文件呢

[解决办法]
是把.S后缀改为.o后缀,然后放到OBJS变量中;
把.c后缀改为.o后缀,然后放到OBJS变量中;
:::

根据你所输入的源文件名进行替换,从而编译成相应文件名的.o文件,
[解决办法]

探讨

引用:
是把.S后缀改为.o后缀,然后放到OBJS变量中;
把.c后缀改为.o后缀,然后放到OBJS变量中;
:::

根据你所输入的源文件名进行替换,从而编译成相应文件名的.o文件,

但是没有编译指令gcc等,却能编译出.o文件,怎么理解?

[解决办法]
探讨
引用:
是把.S后缀改为.o后缀,然后放到OBJS变量中;
把.c后缀改为.o后缀,然后放到OBJS变量中;
:::

根据你所输入的源文件名进行替换,从而编译成相应文件名的.o文件,

但是没有编译指令gcc等,却能编译出.o文件,怎么理解?

[解决办法]
$(CC) -c $(CFLAGS) $< -o $@
$(CC)一般就是根据后缀名定义的编译器比如:
.cpp的把CC定义为g++
.c 的把CC定义为gcc
....


$(CFLAGS) 
定义的编译选项,这个需要了解g++ 的参数去;
$< -o $@
这讲起来就比较复杂了。。。
[解决办法]
探讨
语句中的$(CC) -c $(CFLAGS) $< -o $@时什么意思?跟我的有些类似。

热点排行