makefileコンパイルファイルの紹介

1822 ワード

通常、C言語プログラムの開発、特に大規模なプロジェクトの構築では、1つのファイルを1つのファイルでコンパイルすることはできません.通常、Makefileファイルを作成し、makeコマンドを使用してプロジェクトのコンパイル構築を完了します.
次のようにmathプロジェクトは、その数字が大きいか、どの数字が小さいか、2つの数字と小さなプログラムを簡単に計算します.max.c,min.c,sum.cとmain.c構成は、それぞれ以下の通りである.
max.c
#include <stdio.h>

int max(int a,int b)
{
    if(a>b){
        return a;
     }else{
        return b;
     }
}

min.c
#include <stdio.h>

int min( int a , int b )
{
    if( a > b ){
        return b;
    }else{
        return a;
    }
}

sum.c
#include <stdio.h>

int sum( int a ,int b )
{
    return a + b;
}

main.c
#include <stdio.h>
#include "max.h"
#include "min.h"
#include "sum.h"


int main()
{
    int a = 23;
    int b = 34;
    int maxNum = max(a,b);
    int minNum = min(a,b);
    int sumNum = sum(a,b);

    printf("the max number is :%d
 , the min number is :%d
 , sum is :%d
",maxNum , minNum , sumNum); }

依存関係はmain.c依存max.c,min.c,sum.cこの3つのファイル
main.cに導入する.hファイルは記述ファイルであり、例えばmax.hファイルの内容は
int max(int a ,int b);

プロジェクトをコンパイルするには、make方式でMakefileファイルを作成する必要があります.MakeFileファイルは次のとおりです.
# this is a make file 
math.out:main.o max.o min.o sum.o
        gcc main.o max.o min.o sum.o -o math.out
main.o:main.c
        gcc -c main.c
max.o:max.c
        gcc -c max.c
min.o:min.c
        gcc -c min.c
sum.o:sum.c
        gcc -c sum.c

Makefileファイルのコンパイルは、依存関係に従って上から下へダウングレードして作成されます.例えばmainをコンパイルする.c残りのいくつかのファイルに依存する必要がある場合は、それをいくつかのファイルと1つずつコンパイルした後、一番上の文を実行する必要があります.
  gcc main.o max.o min.o sum.o -o math.out

次の点に注意してください.
MakefileファイルのgccコマンドはTabキーを使用する必要があります.そうしないと、コンパイル期間が間違っています.