Ubuntu下makefile的簡單使用


在Windows下,只需要簡單的點擊以下make,rebuild即可。而在Linux下,這樣的IDE環境並沒有提供,難道必須每一步都執行一遍嗎?比較ok的做法自然是能夠利用批處理腳本來進行操作了,這樣,只需要修改腳本中需要編譯的文件即可。在Linux下,提供了這么一個方便的工具,make。那么接下來我們來利用make進行程序的組織編譯吧。

1. 編寫tool.h

#ifndef __TOOL_H
#define __TOOL_H

void printInteger(int number);

#endif // end of tool.h

 2. 編寫tool.c

#include "tool.h"
#include "stdio.h"

void printInteger(int number)
{
printf("the number is:%d\n",number);
}

 3. 編寫main.c

#include "tool.h"
#include "stdio.h"

int main(int argc, char* argv[])
{
int number;
number=10;
printf("Context-Type:text/html\n\n");
printInteger(number);
return 0;
}

 4. 編譯鏈接文件生成可執行文件main

方法1:

命令行中進行編譯

4.1.1 編譯main.c生成main.o

sudo cc -c main.c

 4.1.2 編譯tool.c生成tool.o

sudo cc -c tool.c

 4.1.3 鏈接main.o和tool.o生成main可執行文件

sudo cc -o main main.o tool.o

 4.1.4 運行main

sudo ./main

 方法2:

makefile進行編譯鏈接

4.2.1 編寫makefile文件(沒有后綴名)

#MakeFile
main: main.o tool.o

main.o: main.c tool.h
cc -c main.c

tool.o: tool.c tool.h
cc -c tool.c

.PHONY:clean
clean:
rm *.o main

 4.2.2 運行make進行編譯鏈接

sudo make

 4.2.3 運行main

sudo ./main

 4.2.4 刪除所有.o文件並再次編譯

sudo make clean
sudo make

 


注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
粤ICP备14056181号  © 2014-2021 ITdaan.com