Makefile编写详解--项目开发
预备知识:
gcc 的3个参数:
1. -o 指定目标文件
gcc sources/main.c -o bin/main
2. -c 编译的时候只生产目标文件不链接
gcc -c sources/main.c -o obj/main.o
3. -I 主要指定头文件的搜索路径
gcc -I headers -c main.c -o main.o
4. -l 指定静态库
gcc -lpthread ...
3个预定义变量介绍:
1. $@ 表示要生成的目标
2. $^ 表示全部的依赖文件
3. $< 表示第一个依赖文件
bin/st_work : obj/main.o obj/st_work.o obj/fun.o
gcc $^ -o $@ (命令一定要用以Tab开头)
obj/st_work.o : sources/st_work.c
gcc -I headers -c $< -o $@
obj/main.o : sources/main.c
gcc -I headers -c $< -o $@
obj/fun.o : sources/fun.c
gcc -I headers -c $< -o $@
clean:
rm -f bin/st_work obj/*.o
Makefile编写详解--项目开发相关推荐
- Makefile文件详解一(怎么在Windows下使用Makefile文件)
前言:如果熟悉在Linux开发的话,肯定知道Makefile文件的用处,它给我们带来很多的便利.在Linux系统下并不会像Windows那么多开发工具,在Windows下,只要在开发工具上点击一个按钮 ...
- STM32CubeMX GCC工程Makefile内容详解
STM32CubeMX GCC工程Makefile内容详解 基础介绍 因为项目原因,需要对编译系统进行一些比较复杂的使用,但是我对于编译系统这一块并不是非常精通了解,所以需要进行一下学习.正巧,众所周 ...
- python利器的使用-图文详解python开发利器之ulipad的使用实践
Ulipad是一个国人limodou编写的专业Python编辑器,它基于wxpython开发的GUI(图形化界面).下面这篇文章主要介绍了python开发利器之ulipad的使用实践,文中介绍的非常详 ...
- MQTT协议详解及开发教程(四)MQTT协议报文格式
推荐一款稳定的基于C编写的MQTT Client开源库 cMQTT MQTT协议详解及开发教程(一)MQTT协议概述 MQTT协议详解及开发教程(二)MQTT服务器EMQx搭建 MQTT协议详解及开发 ...
- 集成式单片机外部模块驱动编写详解——AD5689为例
集成式单片机外部模块驱动编写详解--AD5689为例 集成式驱动原理 AD5689基本介绍 AD5689驱动抽象及源码解释 源码 参考资料 具体的代码和例程请参照以下GitHub仓库,记得给我star ...
- GprMax 3.1.5 建模的in文件编写详解(2)
GprMax 3.1.5 建模的in文件编写详解(2) gprMax是一款优秀的基于时域有限差分方法(FDTD)的电磁波数值模拟软件,目前为止,它还没有图形用户界面(GUI),它的建模关键在于in文件 ...
- GprMax 3.1.5 建模的in文件编写详解(1)
GprMax 3.1.5 建模的in文件编写详解(1) gprMax是一款优秀的基于时域有限差分方法(FDTD)的电磁波数值模拟软件,目前为止,它还没有图形用户界面(GUI),它的建模关键在于in文件 ...
- 稳扎稳打Silverlight(18) - 2.0视频之详解MediaElement, 开发一个简易版的全功能播放器...
[索引页] [×××] 稳扎稳打Silverlight(18) - 2.0视频之详解MediaElement, 开发一个简易版的全功能播放器 作者:webabcd 介绍 Silverlight 2.0 ...
- 一张图详解项目经理PMO应用波士顿矩阵的步骤和流程
一张图详解项目经理&PMO应用波士顿矩阵的步骤和流程
最新文章
- 菜鸟学***——菜鸟的旅程
- 点一下按钮调两次接口?浅谈接口设计的幂等性
- 过程 oracle 写在哪里,Oracle怎么写存储过程? 在什么地方写以及怎么调用?最好给个Sample 急(2)...
- VS与Matlab混合编译 - mexw64 (C++版)
- 中国最为著名的古塔,你认识几座?
- int默认值为0,Integer默认值为null
- LeetCode(121)——买卖股票的最佳时机(JavaScript)
- Android学习Matrix对称变换5
- 157. PHP 闭标签
- html视频播放 bootstrap,基于Bootstrap和jQuery的视频播放器插件
- mobile terminal 笔记
- C# 字符串转JSON格式
- win10永久设置护眼颜色
- Visual SourceSafe 使用说明
- GIS-测绘学概论(5)
- ADPRL - 近似动态规划和强化学习 - Note 1 - Introduction
- 移动磁盘显示文件系统损坏的资料寻回方案
- EC20(4G模块) AT指令
- mshtml与System.Windows.Forms.HtmlElement
- 解决Error: ENOENT: no such file or directory, scandir 安装node-sass报错
热门文章
- WinCE的I2C驱动程序设计
- java异常判断_Java异常退出条件的判断示例代码
- java查看日志命令_[Java教程]【Linux】linux查看日志文件内容命令tail、cat、tac、head、echo...
- ABP入门系列(19)——使用领域事件
- ABP入门系列(12)——如何升级Abp并调试源码
- 哈希桶 entry_哈希表代码实现
- SparkSQL自定义AVG强类型聚合函数与弱类型聚合函数汇总
- doc文件转换html,HTML+CSS入门 如何使用POI将doc文件转换为HTML
- 查看linux硬核上的线程,给大家分享一点基础硬核知识哦 Linux的基础指令操作Lin...
- mysql文件类型_MyCat教程:实现MySql主从复制