学习makefile与autoconfig笔记,持续更新
main.c
#include<stdio.h>
#include"chen_print.h" int main(int argc , char * argv ){
chen_print("haha , I'm coming makefile\n");
return ;
}
chen_print.c
#include<stdio.h>
void chen_print( char * str ){
printf("you enter string is :\n\t%s",str);
}
chen_print.h
void chen_print( char * str );
makefile
main:chen_print.h libchen_print.a
gcc main.c -o main -L./ -lchen_print
libchen_print.a:chen_print.o
ar -r libchen_print.a chen_print.o chen_print.o:chen_print.h chen_print.c
gcc -c chen_print.c -o chen_print.o clean:
rm -f *.o
rm -f *.a
rm -f main
简单介绍一下makefile的格式
target:filename1 filename2
<tab>common
其实makefile的规则很简单,就是看你的目标文件(target)做依赖的文件(filename1 filename2)是否有更新,如果依赖文件更新了,它就会自动执行下面的shell命令
注意,shell命令必须要一<table>键做开头,makefile的格式强制这样,没有办法。如果你觉得<tab>不够美观,建议你修改tab的跳转空格数:
vi 上执行:set ts=3
或者直接修改vi的默认配置文件
vi ~/.vimrc
如果原文件已经存在: set ts=n ,那样修改它就好了,如果不存在这句,那么直接在文件末尾加上即可。
我的makefile中还写了clean的命令,是做环境清理用的,执行
$>make clean
它就会执行下面清理的动作
同理,我们在使用
$>make install
这些命令时,实质上就是执行一些shell动作
******************************************
自己学习的网站资料:
详细介绍makefile的用法,入门必备
http://blog.csdn.net/liang13664759/article/details/1771246
有一些入门基础后看的进阶文章
http://goodcandle.cnblogs.com/archive/2006/03/30/278702.html
学习makefile与autoconfig笔记,持续更新的更多相关文章
- BLE资料应用笔记 -- 持续更新
BLE资料应用笔记 -- 持续更新 BLE 应用笔记 小书匠 简而言之,蓝牙无处不在,易于使用,低耗能和低使用成本.'让我们'更深入地探索这些方面吧. 蓝牙无处不在-,您可以在几乎每一台电话.笔记本电 ...
- C++入职学习篇--代码规范(持续更新)
C++入职学习篇--代码规范(持续更新) 一.头文件规范 在头文件中大家一般会定义宏.引入库函数.声明.定义全局变量等,在设计时最后进行分类,代码示范(自己瞎琢磨的,请多多指点): #ifndef T ...
- [读书]10g/11g编程艺术深入体现结构学习笔记(持续更新...)
持续更新...) 第8章 1.在过程性循环中提交更新容易产生ora-01555:snapshot too old错误.P257 (这种情况我觉得应该是在高并发的情况下才会产生) 假设的一个场景是系统一 ...
- java 学习必备的软件,持续更新中
小编会持续更新在学习Java过程中需要的软件以及各种文件: 话不多说,看行动! 一:JDK (1)JDK1.8(*64): 链接:https://pan.baidu.com/s/1vM0jNXn2CT ...
- 资源| 学习视频库-永久有效,持续更新!附赠java面试汇总
每天进步一丢丢,连接梦与想 我们总是羡慕他人的光芒,却忘记自己也会发光 声明 资源来自于网络,小编只是资源的搬运工,若有侵权,联系小编即删. 期待已久的学习视频库来啦! 经过小编多日整理,整理了1.5 ...
- react-native-storage 使用笔记 持续更新
React-native-storage是在AsyncStorage之上封装的一个缓存操作插件库,刚开始接触这个也遇到了一些问题,在这里简单记录总结一下,碰到了就记下来,持续更新吧 1.安卓下stor ...
- 数据分析之Pandas和Numpy学习笔记(持续更新)<1>
pandas and numpy notebook 最近工作交接,整理电脑资料时看到了之前的基于Jupyter学习数据分析相关模块学习笔记.想着拿出来分享一下,可是Jupyter导出来h ...
- Semantic ui 学习笔记 持续更新
这个semantic 更新版本好快~ 首先是代码的标识<code></code> 具体样式就是红框这样的 圈起来代码感觉不错 不过要在semantic.css里在加上如下样式~ ...
- Git学习笔记(持续更新)
1.强制同步为远程的代码 远程仓库回退了commit的情况下(第2条描述之情况),强制同步远程的代码到本地 #更新远程最新的所有代码,但是不merge或者rebase git fetch --all ...
随机推荐
- jquery 通过ajax 提交表单
1.需要引入以下两个js文件 <script src="Easyui/jquery-1.7.2.min.js"></script> <scrip ...
- java使用ftp局域网内多线程上传图片过慢
多线程ftp上传文件时候,图片上传很慢,调试和查询资料发现主要在:storeFile方法 解决方案如下: FTPClient fc设置setBufferSize 可以根据内存大小适当设置大点的缓冲区: ...
- AndroidTest.java
以下代码使用ApiDemos-debug.apk进行测试 package com.saucelabs.appium; import io.appium.java_client.AppiumDriver ...
- java JDBM2 的几个简单实例
JDBM2 提供了 HashMap 和 TreeMap 的磁盘存储功能,简单易用,用于持久化数据.特别适合用于嵌入到其他应用程序中. 磁盘数据库 HelloWorld.java import java ...
- Xcode各个版本及模拟器下载
如果你嫌在 App Store 下载 Xcode 太慢,你也可以选择从网络上下载: Xcode下载(Beta版打的包是不能提交到App Store上的) 绝对官方源!!!绝对官方源!!!绝对官方源!! ...
- hdu1078 FatMouse and Cheese —— 记忆化搜索
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1078 代码1: #include<stdio.h>//hdu 1078 记忆化搜索 #in ...
- 通过Chrome浏览器进行android调试/Remote Debugging on Android with Chrome
The way your web content behaves on mobile can be dramatically different from the desktop experience ...
- 加快你的JavaScript加载时间
发现可以提速的内容 你必须首先发现你的什么图片和HTML加载缓慢了你的脚本速度,下面提供了方法: 1. Firefox web-developer toolbar 2. Firebug Plugi ...
- Ueditor文本编辑工具栏自定义
1.找到 ueditor.config.js 文件 2.在 toolbars 数组内进行删减,添加 , toolbars: [[ 'fullscreen', 'source', '|', 'undo' ...
- win10环境变量path误删(windows找不到文件‘%windir%\systempropertiesadvanced.exe’)的解决办法
具体步骤如下:1. 首先重新启动电脑,点击开始按钮,选择电源,此时按住键盘上的shift键,再点击“重启”,选择疑难解答->再选择高级选项->再选择启动设置->然后点击重启-> ...