linux下通用Makefile写法
linux编译多个源文件的程序比较麻烦,这下就需要通用的Makefile了,编译的时候执行一下make命令就OK,下面介绍通用makfile的写法。
假设现在有以下源文件:file1.h file1.c file2.h file2.c mainproc.c,程序的主函数在mainproc.c中。
#######通用Makefile模板########
# 目标文件名字
TARGET = Myproc
# c源文件
SRC = mainproc.c file1.c file2.c
# object文件
OBJS = $(SRC:.c=.o)
# 编译器
CC = gcc
# 头文件路径,可以任意指定头文件
INCLUDE = -I/usr/include/ -I/usr/include/ncurses
# 链接库
LINKPARAM = -lpthread -lncurses
# 编译选项
CFLAGS = -ansi -g -Wall
all:$(TARGET)
# 定义目标文件生成规则
$(TARGET):$(OBJS)
$(CC) -o $(TARGET) $(LINKPARAM) $(OBJS)
.SUFFIXES:.c
# 定义obejct文件生成规则
.c.o:
$(CC) $(LINKPARAM) $(INCLUDE) $(CFLAGS) -c $<
# 定义清理函数
clean:
rm $(OBJS) $(TARGET)
linux下通用Makefile写法相关推荐
- Linux下通用的Makefile
Linux下通用的Makefile 我们在Linux环境下开发程序,少不了要自己编写Makefile,一个稍微大一些的工程下面都会包含很多.c/.cpp的源文件.如果我们用gcc/g++去一个一个编译 ...
- Linux下的makefile编写 ——陈皓《跟我一起写Makefile》学习笔记(一)
Linux下的makefile编写 前言 本人记笔记习惯使用OneNote,在学习LinuxC++过程中发现deepin上没有大佬开发或者移植,本人技术也不精,所以决定写博客记笔记(只是习惯问题,并没 ...
- Windows和Linux下通用的线程接口
对于多线程开发,Linux下有pthread线程库,使用起来比较方便,而Windows没有,对于涉及到多线程的跨平台代码开发,会带来不便.这里参考网络上的一些文章,整理了在Windows和Linux下 ...
- Multi-thread--Windows和Linux下通用的线程接口
对于多线程开发,Linux下有pthread线程库,使用起来比较方便,而Windows没有,对于涉及到多线程的跨平台代码开发,会带来不便.这里参考网络上的一些文章,整理了在Windows和Linux下 ...
- spdlog linux编译出错,Linux下编写Makefile引入第三方库
Linux下编写Makefile引入第三方库 前言:一直在使用CmakaList 生成Makefile文件,其实很少去写Makefile,但是最近帮朋友处理了一个Makefile引入第三方库的问题,就 ...
- Linux下通用线程池的创建与使用
Linux下通用线程池的创建与使用 本文给出了一个通用的线程池框架,该框架将与线程执行相关的任务进行了高层次的抽象,使之与具体的执行任务无关.另外该线程池具有动态伸缩性,它能根据执行任务的轻重自动调整 ...
- LINUX下的makefile学习(此文是我学习过程遇到问题时找到的所有回答,感谢其它大佬的回答,各个文章我都标明了原文链接)
看视频学习截图: 针对上面情况就使用makefile工程管理 内容一行写不完,加上'\' : CC=gcc2 CFLAGS=-Wall -std=gnu993 #CFLAGS=-Wall -std=g ...
- Linux下的Makefile编写与优化
Makefile---Linux 一.什么是Makefile? 二.什么是make? 三.Makefile的用途? 四.理论基础 五.Makefile的工作过程? 六.规则的构成 七.Makefile ...
- Linux下的Makefile规则(隐式规则和模式规则)
目录 1.Makefile规则 2.隐式规则 3.模式规则 Linux下编写C使用的GDB调试器 Ubuntu中关于C介绍以及编写C程序 Ubuntu换源教程 Linux中的Make工程管理 Linu ...
最新文章
- 各大厂分布式链路跟踪系统架构对比
- 图像和流媒体 -- 详解YUV数据格式
- 国王放米粒的C语言程序,云南大学软件学院C语言实验米粒问题.doc
- yy直播没声音html,驱动技巧:解决YY语音中麦克风无声或者有噪音的问题
- python yield 简单用法_python中 yield 的用法 (简单、清晰)
- 使用supervisord 来守护 nginx进程
- 成绩记录薄系统C语言,成绩记录簿C语言版.doc
- html5浏览器最小化,javascript – 在浏览器最小化时引起用户的注意(跨浏览器桌面通知?)...
- c语言c9考试软件下载,二级c语言考试系统-无忧考吧二级c语言考试系统下载 v2018.09官方版--pc6下载站...
- 不想荒废你的大学生活吧?看看牛人是怎样成为电子学霸的!
- 如何进入大华智能分析服务器,如何配置大华录像机区域入侵功能,看完就明白...
- 5号字对应的数字字号_5号字体是多少pt-字号,尺寸
- Medusa(美杜莎)--参数及常见命令
- 自学php多久可以工作_php自学要多久,学php难吗,多久能学会?
- centos 日志审计_生产环境日志审计
- 基于 MSP430 CC1101的WOR的测试
- Matlab使用-meshgrid函数(网格矩阵)
- 大数据平台架构设计案例
- WSL嵌入式开发系列教程 4 —— 安装VS code
- 紫外线探测器SG01D-C18应用于紫外光刻机