linux C学习笔记01--makefile
不知不觉毕业五年了,以前学的linux基本都忘了,重新温习起来吧!
下面是自己写的makefile文件,供新手和自己回头时查阅
CC=gcc
EXE=c.out
CCC=g++
EEE=cc.out
INC=/home/malth/project/include/
LIB=/home/malth/project/lib/
#添加文件搜索路经
vpath=/home/malth/project/lib
#vpath %.h ~/project/include
OUT=main.o bubbling_sort.o thread.o share_memory.o
CFILE=main.c bubbling_sort.c thread.c share_memory.c ctest:$(OUT)
@echo compiling start......
#命令前加 - 减号可以忽略命令执行错误的信息
#"@"符号可以隐藏命令,命令会执行但是不会显示命令本身 #调试发现用*.o文件做gcc -o 连接生成的可执行文件不能进行GDB调试顾增加了*.c文件直接生成供选择
# $(CC) $(OUT) -static $(LIB)slib.a -lpthread -o $(EXE)
$(CC) $(CFILE) -I$(INC) -static $(LIB)slib.a -lpthread -g -o $(EXE)
@echo compile successed!
# @-rm -f *.o main.o:main.c
$(CC) -I$(INC) -c -g main.c common.o:common.c
$(CC) -c -g common.c thread.o:thread.c
$(CC) -c -g thread.c bubbling_sort.o:bubbling_sort.c
$(CC) -c -g bubbling_sort.c share_memory.o:share_memory.c
$(CC) -c -g share_memory.c cctest:test.cc
-rm -f cc.out
$(CCC) -o $(EEE) test.cc ######################################################
#create the static library
slib:static_lib.o
ar -rcs slib.a static_lib.o
mv -f slib.a $(LIB) static_lib.o:static_lib.c
$(CC) -c static_lib.c
###################################################### clean:
-rm -f $(EXE) $(EEE) *.o
ls result=
result:=$(words hello world) all:
@echo -n "result is : "
@echo $(result)
.PHONY:all
linux C学习笔记01--makefile的更多相关文章
- Linux 编程学习笔记----动笔makefile档
Befroe Beginning. 在设置暑假的plan ,关于Linux的书籍如今在看的是ALP和Linux高级程序设计(杨宗德)第三版.在计划中的是Linux高级环境编程. 如今開始关于Linux ...
- Linux Basic学习笔记01
介绍课程: 中级: 初级:系统基础 中级:系统管理.服务安全及服务管理.Shell脚本: 高级: MySQL数据库: cache & storage 集群: Cluster lb: 4laye ...
- linux shell 学习笔记01
1.命令历史记录history !$ :调用上一条命令的执行结果 !100 :运行history记录里的第100条命令 !ser :调用以ser开头的最后一次执行的命令 ctrl+r ...
- C++ GUI Qt4学习笔记01
C++ GUI Qt4学习笔记01 qtc++signalmakefile文档平台 这一章介绍了如何把基本的C++只是与Qt所提供的功能组合起来创建一些简单的图形用户界面应用程序. 引入两个重要概 ...
- linux 驱动学习笔记01--Linux 内核的编译
由于用的学习材料是<linux设备驱动开发详解(第二版)>,所以linux驱动学习笔记大部分文字描述来自于这本书,学习笔记系列用于自己学习理解的一种查阅和复习方式. #make confi ...
- 软件测试之loadrunner学习笔记-01事务
loadrunner学习笔记-01事务<转载至网络> 事务又称为Transaction,事务是一个点为了衡量某个action的性能,需要在开始和结束位置插入一个范围,定义这样一个事务. 作 ...
- Linux系统学习笔记:文件I/O
Linux支持C语言中的标准I/O函数,同时它还提供了一套SUS标准的I/O库函数.和标准I/O不同,UNIX的I/O函数是不带缓冲的,即每个读写都调用内核中的一个系统调用.本篇总结UNIX的I/O并 ...
- Linux内核学习笔记-2.进程管理
原创文章,转载请注明:Linux内核学习笔记-2.进程管理) By Lucio.Yang 部分内容来自:Linux Kernel Development(Third Edition),Robert L ...
- Linux内核学习笔记-1.简介和入门
原创文章,转载请注明:Linux内核学习笔记-1.简介和入门 By Lucio.Yang 部分内容来自:Linux Kernel Development(Third Edition),Robert L ...
- Linux内核学习笔记二——进程
Linux内核学习笔记二——进程 一 进程与线程 进程就是处于执行期的程序,包含了独立地址空间,多个执行线程等资源. 线程是进程中活动的对象,每个线程都拥有独立的程序计数器.进程栈和一组进程寄存器 ...
随机推荐
- Python 手写数字识别-knn算法应用
在上一篇博文中,我们对KNN算法思想及流程有了初步的了解,KNN是采用测量不同特征值之间的距离方法进行分类,也就是说对于每个样本数据,需要和训练集中的所有数据进行欧氏距离计算.这里简述KNN算法的特点 ...
- Nagios NSclient Failed to get CPU value: \238(_total)\6: Failed to get mutex :(
一台Windows Server 2012的nsclient出现以下的错误,表示无法获得CPU信息 2016-08-08 10:31:33: e:..\..\..\..\trunk\modules\C ...
- 2015GitWebRTC编译实录11
2015.07.21 ilbc 编译通过注意有几个win32打头的文件,其实都是要编进去的[429/1600 ] CC obj ilbc.abs_quant.o[430/1600 ] CXX obj ...
- python pandas.DataFrame选取、修改数据最好用.loc,.iloc,.ix
先手工生出一个数据框吧 import numpy as np import pandas as pd df = pd.DataFrame(np.arange(0,60,2).reshape(10,3) ...
- require.js+backbone.js基本使用
一.菜单{ //银行卡基础信息维护 rsId: 'menu.param.cardbin', iconCls: 'icon-double-angle-right', name: menusLang._( ...
- HTML适应手机浏览器宽度
<meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scal ...
- 安全沙箱冲突:Loader.content:XX 不能访问 XX 可以通过调用 Security.allowDomain 来避免此冲突。
参考资料:http://tieba.baidu.com/p/882855105 感谢:Z0287yyy 感谢分享精神. 具体解决方案:在loader去load的时候,带上这个参数 var contex ...
- [Tex学习]WinEdit 常用软件快捷键
WinEdit 常用软件快捷键 编辑: Alt+C:在剪贴板原有复制文本后增加新的被选择的文本. Ctrl+Shift+Alt+Right/Left:对选中文本增加或者删除Comment标记. Ctr ...
- 编译错误:error: multi-line comment
编译错误:error: multi-line comment 这其实是有宏定义的地方的问题. 原因是宏定义非一行,在宏定义的行尾使用 '\' 连接符导致的. 所以这个地方的注释使用 /* */ ...
- POJ 3142 The Balance
Description Ms. Iyo Kiffa-Australis has a balance and only two kinds of weights to measure a dose of ...