makefileとautoconfigノートを勉強し、更新を続けます.
2819 ワード
main.c
#include<stdio.h>
#include"chen_print.h"
int main(int argc , char * argv ){
chen_print("haha , I'm coming makefile
");
return 0;
}
chen_print.c
#include<stdio.h>
void chen_print( char * str ){
printf("you enter string is :
\t%s",str);
}
chen_print.h
void chen_print( char * str );
makefile
main:chen_print.h libchen_print.a
gcc main.c -o main -L./ -lchen_print
libchen_print.a:chen_print.o
ar -r libchen_print.a chen_print.o
chen_print.o:chen_print.h chen_print.c
gcc -c chen_print.c -o chen_print.o
clean:
rm -f *.o
rm -f *.a
rm -f main
makefileのフォーマットを簡単に紹介します
target:filename1 filename2
実はmakefileのルールは簡単です.ターゲットファイル(target)が依存するファイル(filename 1 filename 2)が更新されているかどうかを見て、依存ファイルが更新されると、次のshellコマンドが自動的に実行されます.
shellコマンドはキーで始まる必要があります.makefileのフォーマットは強制されます.仕方がありません.
viで実行:set ts=3
またはviのデフォルトプロファイルを直接変更する
vi ~/.vimrc
元のファイルがすでに存在する場合:set ts=n、それを修正すればいいです.この文が存在しない場合は、ファイルの末尾に直接追加すればいいです.
私のmakefileにはcleanのコマンドも書いてあります.環境クリーンアップ用で、実行します.
$>make clean
次のクリーンアップが実行されます
同じように、私たちは
$>make install
これらのコマンドは、実質的にshell動作を実行します.
******************************************
自分で勉強するサイトの資料:
makefileの使い方を詳しく紹介し、入門に必須ですhttp://blog.csdn.net/liang13664759/article/details/1771246
いくつかの入門の基礎の後で読む進級の文章がありますhttp://goodcandle.cnblogs.com/archive/2006/03/30/278702.html