• 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
  • 相关阅读:
    比赛-ZR DAY1 (04 Aug, 2018)
    Java NIO系列教程(十一) Pipe
    Java NIO系列教程(九) ServerSocketChannel
    Java NIO系列教程(十) Java NIO DatagramChannel
    Java NIO系列教程(七) FileChannel
    Java NIO系列教程(八) SocketChannel
    Java NIO系列教程(六) Selector
    Java NIO系列教程(四) Scatter/Gather
    Java NIO系列教程(五) 通道之间的数据传输
    Java NIO系列教程(二) Channel
  • 原文地址:https://www.cnblogs.com/jacklikedogs/p/4125361.html
Copyright © 2020-2023  润新知