Makefile的一个问题,求教了。

Timor君 发布于 2013/03/07 17:15
阅读 856
收藏 0
GCC

系统:ubuntu 加长版,gcc

文件:

main.cpp

sub/sub_int.cpp, sub/sub_float.cpp , sub/sub.h

add/add_int.cpp, add/add_float.cpp , add/add.h

makefile代码:

CFLAGS = -Iadd -Isub -O2
OBJS = main.o add_int.o add_float.o sub_int.o sub_float.o
VPATH = add:sub:.
OBJSDIR = objs
TARGET = cacu


$(TARGET) : $(OBJSDIR) $(OBJS)
	$(CPP)  $(CFLAGS)  $(OBJSDIR)/*.o  -o $(TARGET)

$(OBJSDIR) :
	mkdir -p ./$@

$(OBJS): %.o : %.cpp
	$(CPP) -c $(CFLAGS) $< -o $(OBJSDIR)/$@


clean:
	-$(RM) $(TARGET) 
	-$(RM) &(OBJSDIR)/*.o
错误:

mkdir -p ./objs
cc -E -c -Iadd -Isub -O2 main.cpp -o objs/main.o
cc -E -c -Iadd -Isub -O2 add/add_int.cpp -o objs/add_int.o
cc -E -c -Iadd -Isub -O2 add/add_float.cpp -o objs/add_float.o
cc -E -c -Iadd -Isub -O2 sub/sub_int.cpp -o objs/sub_int.o
cc -E -c -Iadd -Isub -O2 sub/sub_float.cpp -o objs/sub_float.o
cc -E  -Iadd -Isub -O2  objs/*.o  -o cacu
cc: 警告: objs/add_float.o:未使用链接器输入文件,因为链接尚未完成
cc: 警告: objs/add_int.o:未使用链接器输入文件,因为链接尚未完成
cc: 警告: objs/main.o:未使用链接器输入文件,因为链接尚未完成
cc: 警告: objs/sub_float.o:未使用链接器输入文件,因为链接尚未完成
cc: 警告: objs/sub_int.o:未使用链接器输入文件,因为链接尚未完成
顺便问一句:gcc从使用到熟练都会出现很多问题,还是刚接触会有很多呢?

加载中
0
Timor君
Timor君
这个到底是什么错误啊,搜了这么久,就是找不到答案。@中山野鬼
aoniao
aoniao
目测你还没有添加编译规则,makefile文件还没有写好。请参看相关消息。
0
gnefil.nil
gnefil.nil
为什么加 -E 。。。。
0
xym
xym
cc -E  -Iadd -Isub -O2  objs/*.o  -o cacu   估计是这句出错了
0
中山野鬼
中山野鬼

引用来自“远山如此”的答案

这个到底是什么错误啊,搜了这么久,就是找不到答案。@中山野鬼
你试试 把objs 改成./objs呢?
0
周翼翼
周翼翼
用什么中文包, 搞出来的错误都没法搜~>~
Timor君
Timor君
还有救没?
Timor君
Timor君
我也后悔用中文包了! 居然在网上搜不到答案。
0
宏哥
宏哥

引用来自“周翼翼”的答案

用什么中文包, 搞出来的错误都没法搜~>~

我有个服务器, 被托管商安装成中文版本, 害我花了好几个小时才弄好

真TMD操蛋

0
周翼翼
周翼翼

引用来自“宏哥”的答案

引用来自“周翼翼”的答案

用什么中文包, 搞出来的错误都没法搜~>~

我有个服务器, 被托管商安装成中文版本, 害我花了好几个小时才弄好

真TMD操蛋

换头像了~~


0
宏哥
宏哥

引用来自“周翼翼”的答案

引用来自“宏哥”的答案

引用来自“周翼翼”的答案

用什么中文包, 搞出来的错误都没法搜~>~

我有个服务器, 被托管商安装成中文版本, 害我花了好几个小时才弄好

真TMD操蛋

换头像了~~


站起来了
返回顶部
顶部