Makefile
写了一个Makefile文件,错误太多,结果出现很多问题,每次编译结果不一样,现在编译又出现了另一个问题:
ld: Mismatched ABI (not an ELF file) for Dispatch.o
#XQ Makefile
CC = g++
Source = Dispatch.cpp \
File.cpp \
Gloable.cpp \
Log.cpp \
Msg.cpp \
main.cpp \
Mutex.cpp \
Object.cpp \
Process.cpp \
Socket.cpp \
Thread.cpp \
Threads.cpp
Object = $(Source:.cpp=.o)
Dependent = $(Source:.cpp=.d)
Target = xq
$(Target):$(Object)
$(CC) -o $(Target) $(Object)
#$(Object):%.o: %.cpp %.d
#$(CC) -c $< -o $@
$(Dependent):%.d:%.cpp
$(CC) -MM $< > $@.tmp; \
sed '$$a\\t$$\(CC\) -c $$^ -o $$@' $@.tmp > $@; \ #这个是在依赖文件后加上生成规则,感觉有问题!!
rm -f $@.tmp
-include $(Dependent)
.PHONY : clean_all
clean_all:
-rm $(Target) $(Object) $(Dependent)
还有个想要的效果没达到,就是希望依赖文件也根据实现文件依赖的头文件的更新而更新
[解决办法]
有点乱,依赖文件、目标文件、表达式都正确的话应该不会错吧
[解决办法]
生成规则必须以一个真正的TAB字符开头。
[解决办法]
Mismatched ABI (not an ELF file) for Dispatch.o
第一次见这种错误
[解决办法]
是不是你的文件坏了?
http://topic.csdn.net/u/20100827/16/dd35f1a7-ba1f-4056-a792-569780d0819d.html
Makefile,该怎么解决
Makefile写了一个Makefile文件,错误太多,结果出现很多问题,每次编译结果不一样,现在编译又出现了另一个问
