Makefile模版-仿linux启动--绚丽感觉

 
写程序,文件多的时候实用gcc就不方便了,就需要Makefile了,但自己对与Makefile复杂的依赖关系、规则非常的厌恶,世界是高速发展的,不要把时间浪费在无聊是事情上,收集一些Makefile的模版,以后的小规模程序就可以套用了。下边的Makefile是李建( www.mculee.cn)给的,非常的好用。
 

#   现有一个ipmsg项目

#  .c文件有pthread.c  socket_init.c use_data.c  main.c

#  头文件有:pthread.h  socket_init.h use_data.h

#  上边.c 文件中只有main.c自己的头文件

#  使用这个makefile时,一个.c对应一个同名的.h文件 不包含.h的.c文件需额外支出

#  以后多文件编译时,直接套用这个模版就可以了。

#  推荐操作: 每次make时最好make clean

 

TARGET=ipmsg #【要生成可执行文件名】

#【这里填入需要编译的文件对应的.o文件名,这里的.c文件对应一个.h】
OBJ=pthread.o  socket_init.o use_data.o
CFLAG=-Wall -g -w#【编译选项】
OBJ_NO_H=main.o #【只有.c没有对应.h文件写在这里,写成对应的.o文件】
CC=gcc#【编译器】
LIBS= -lpthread#【需要加入的额外库文件】


## 输出样式 与编译无关
OFFSET=\x1b[41G
COLOR=\x1b[1;34m
RESET=\x1b[0m
CLEAR=\x1b[H\x1b[J


## 以后的不用修改
$(TARGET): $(OBJ_NO_H) $(OBJ)
    @echo -n "Generating $@..."
    @if $(CC) $(CFLAG) -o $@ $^ $(LIBS); then echo -e "$(OFFSET)$(COLOR)[ OK ]$(RESET)"; fi

%.o: %.c %.h
    @echo -n "Compiling $<..."
    @if $(CC) $(CFLAG) -c -o $@ $<; then echo -e "$(OFFSET)$(COLOR)[ OK ]$(RESET)"; else exit 1; fi

clean:
    @echo -n "Cleanning up..."
    @rm -rf *.o *.bak *~ $(TARGET)
    @echo -e "$(OFFSET)$(COLOR)[ OK ]$(RESET)"

clear:
    @echo -ne "$(CLEAR)Cleanning up..."
    @rm -rf *.o *.bak *~ $(TARGET)
    @echo -e "$(OFFSET)$(COLOR)[ OK ]$(RESET)"

 
该工作耗时: 1.5小时。主要在查找资料上花费太多时间。
阅读(850) | 评论(0) | 转发(0) |
0

上一篇:IPMsg飞鸽传书网络协议

下一篇:IPMsg飞鸽传书网络协议解析手记

相关热门文章
  • 麻将 麻将牌技揭示危险张...
  • www.ub8.cm 76、时时彩转15选5...
  • 重新安装Windows后修复Linux的...
  • 使用MBRFix修复MBR
  • U盘安装Debian教程
  • linux 常见服务端口
  • 什么是shell
  • linux socket的bug??
  • linux的线程是否受到了保护?...
  • 一个适用于windows和linux的抓...
  • debian7系统与ATI X2300显卡...
  • ubuntu sysklogd之配置文件介...
  • 自己用的ubuntu环境搭建(一)...
  • linux 学习心得
  • 用户输入操作和数据的显示...
给主人留下些什么吧!~~
评论热议

你可能感兴趣的:(linux)