1,源文件依赖关系

                defs.h        command.h        buffer.h
main.cpp *
util.cpp *
kde.cpp * *
command.cpp * *
display.cpp * *
insert.cpp * *
search.cpp * *
files.cpp * * *

2, 源文件

因为这里只是想做一下简单测试,所以很多源文件的内容都是空的。

[root@localhost -makefile]#head *.h
==> buffer.h <==
#pragma once
#define BUFFER "BUFFER" ==> command.h <==
#pragma once
#define COMMAND "COMMAND" ==> defs.h <==
#pragma once
#define DEFS "DEFS"
[root@localhost -makefile]#head *.cpp
==> command.cpp <== ==> display.cpp <== ==> files.cpp <== ==> insert.cpp <== ==> kde.cpp <== ==> main.cpp <==
#include <stdio.h> int main()
{
printf("Hello World\n");
return ;
} ==> search.cpp <== ==> utils.cpp <==
[root@localhost -makefile]#

3,makefile 内容(最最原始的)

[root@localhost -makefile]#cat makefile
edit : main.o kde.o command.o display.o insert.o search.o utils.o files.o
g++ -o edit main.o kde.o command.o display.o insert.o search.o utils.o files.o main.o : main.cpp defs.h
g++ -c main.cpp
kde.o : kde.cpp defs.h command.h
g++ -c kde.cpp
command.o : command.cpp defs.h command.h
g++ -c command.cpp
display.o : display.cpp defs.h buffer.h
g++ -c display.cpp
insert.o : insert.cpp defs.h buffer.h
g++ -c insert.cpp
search.o : search.cpp defs.h buffer.h
g++ -c search.cpp
files.o : files.cpp defs.h buffer.h command.h
g++ -c files.cpp
utils.o : utils.cpp defs.h
g++ -c utils.cpp
clean :
rm edit main.o kde.o command.o display.o insert.o search.o files.o utils.o -rf

4,执行make

[root@localhost -makefile]#make clean
rm edit main.o kde.o command.o display.o insert.o search.o files.o utils.o -rf

5,运行结果

[root@localhost -makefile]#./edit
Hello World

6,执行清理

[root@localhost -makefile]#make clean
rm edit main.o kde.o command.o display.o insert.o search.o files.o utils.o -rf

makefile实例(2)-多个文件实例的更多相关文章

  1. linux makefile 编译多个.c文件 实例

    本例由 main.c  add.c sub.c add_sub.h 四个文件组成:编写Makefile执行程序 /******************************************* ...

  2. ORACLE配置tnsnames.ora文件实例

    ORACLE配置tnsnames.ora文件实例客户机为了和服务器连接,必须先和服务器上的监听进程联络.ORACLE通过tnsnames.ora文件中的连接描述符来说明连接信息.一般tnsnames. ...

  3. Java学习-011-创建文件实例及源代码

    此文源码主要为应用 Java 创建文件的源代码.若有不足之处,敬请大神指正,不胜感激! 创建文件的源代码如下所示: /** * @function 文件操作:创建文件.若文件不存在,则直接创建文件:若 ...

  4. PHP+ajaxForm异步带进度条上传文件实例

    在使用ajaxForm方法之前,首先需要安装form.js的插件,网上有: 一.首先说用法,ajaxForm可以接收0或1个参数,该参数可以是一个变量.一个对象或回调函数,这个对象主要有以下参数: v ...

  5. C#操作VFP的dbf数据库文件实例

    C#操作VFP的dbf数据库文件实例 新一篇: js获取网站跟路径 实例中分别使用Oledb和Odbc操作vfp数据库dbf文件,操作包括:读取,增删改. 已测试可直接使用,使用方法:下面代码分两个部 ...

  6. TensorFlow------读取CSV文件实例

    TensorFlow之读取CSV文件实例: import tensorflow as tf import os def csvread(filelist): ''' 读取CSV文件 :param fi ...

  7. C 语言实例 - 将字符串写入文件

    C 语言实例 - 将字符串写入文件 C 语言实例 C 语言实例 将字符串写入文件. 实例 #include <stdio.h> #include <stdlib.h> /* e ...

  8. HTTP的上传文件实例分析

    这个是http文件传输的一种格式,当时不知道这种格式,废弃. HTTP的上传文件实例分析 由于论坛不支持Word写文章发帖. 首先就是附件发送怎么搞,这个必须解决.论坛是php的.我用Chrome类浏 ...

  9. 原生PHP网页导出和导入excel文件实例

    原生PHP实现的网页导出和导入excel文件实例,包括上传也是用的原生.还可在exportExcel方法里设置字体等表格样式. 导出和导入表单代码: <p style="margin: ...

  10. jQuery ajax上传文件实例

    jQuery ajax上传文件实例 <form id="form" enctype="multipart/form-data"><input ...

随机推荐

  1. C#打开得到路径

    FolderBrowserDialog path = new FolderBrowserDialog(); path.ShowDialog(); MessageBox.Show(path.Select ...

  2. Android核心分析之二十一Android应用框架之AndroidApplication

    Android Application Android提供给开发程序员的概念空间中Application只是一个松散的表征概念,没有多少实质上的表征.在Android实际空间中看不到实际意义上的应用程 ...

  3. Java-马士兵设计模式学习笔记-命令模式

    一.概述 命令模式 二.代码 1.Client.java public class Client { public void request(Server server){ server.addCom ...

  4. BASM遵循的规则

    任何情况下,在寄存器的使用上,BASM遵循如下的规则: ASM 语句执行过程中,必须保存EDI.ESI.ESP.EBP.EBX 的值(5个寄存器,意思是可以用,但最后得恢复成原模原样). ASM ...

  5. CSS3伪类选择器

    first-line   设置首行样式 first-letter 设置首字母样式 before  在某元素前插入内容并设置内容样式 after 在某元素后插入内容并设置内容样式 <!DOCTYP ...

  6. VS2010/MFC编程入门之四(MFC应用程序框架分析)

    VS2010/MFC编程入门之四(MFC应用程序框架分析)-软件开发-鸡啄米 http://www.jizhuomi.com/software/145.html   上一讲鸡啄米讲的是VS2010应用 ...

  7. Item2 + zsh

    转自 http://11ten.gitcafe.io/book-a/iTerm2/index.html iTerm2的主要特点: 开源免费. 兼容性比默认Terminal更好.对于经常要远程使用的情况 ...

  8. CentOS下下删除大量文件

    首先建立50万个文件 ➜ test for i in $(seq 1 500000);do echo text >>$i.txt;done 1. rm ➜ test time rm -f ...

  9. MongoDB操作(.net)

    一.查询 var doc = new Document(); 1.模糊查询var reg = new MongoRegex(".*" + qry.名称 + ".*&quo ...

  10. hibernate.cfg.xml文件的说明

    <?xml version='1.0' encoding='UTF-8'?> <!DOCTYPE hibernate-configuration PUBLIC "-//Hi ...