zoukankan      html  css  js  c++  java
  • makefile实例(2)-多个文件实例

    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 1-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 1-makefile]#head *.cpp
    ==> command.cpp <==
    
    ==> display.cpp <==
    
    ==> files.cpp <==
    
    ==> insert.cpp <==
    
    ==> kde.cpp <==
    
    ==> main.cpp <==
    #include <stdio.h>
    
    int main()
    {
        printf("Hello World
    ");
        return 0;
    }
    
    ==> search.cpp <==
    
    ==> utils.cpp <==
    [root@localhost 1-makefile]#

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

    [root@localhost 1-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 1-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 1-makefile]#./edit 
    Hello World

    6,执行清理

    [root@localhost 1-makefile]#make clean
    rm edit main.o kde.o command.o display.o insert.o search.o files.o utils.o -rf
  • 相关阅读:
    INFORMATION_SCHEMA.INNODB_LOCKS
    INFORMATION_SCHEMA.INNODB_TRX 详解
    zabbix 通过key 获取
    匿名hash
    [] 和{} 匿名引用
    perl 初始化Hash
    9.2 数组的散列
    数组的数组
    RMAN恢复目录
    验证备份前设置CONFIGURE CONTROLFILE AUTOBACKUP ON/OFF; 的区别
  • 原文地址:https://www.cnblogs.com/jacklikedogs/p/4125361.html
Copyright © 2011-2022 走看看