Linux下的C语言学习之Makefile编写
2015-04-01 17:17
453 查看
这里我直接给大家展示一个我自己写的小工程实例,来帮助大家了解在linux下建立工程如何组织文件以及Makefile的编写。
我采用多文件的形式根据命令行的输入,求两个数的加,减,乘,除运算。下面我将分别列出各个文件的代码供大家参考。
add.h
sub.c
mul.h
mul.c
div.h
main.c
Makefile
工程文件到此列举结束。
关于Makefile的编写,这里我们要注意几点事项。
1.Makefile的命令要以tab键开始,在linux中tab键要设置成4个空格的长度。(设置方法这里就不多说了)
2.在这里编写的Makefile文件只是最简单的Makefile文件,这是我们学习的第一步。
最后:本篇博文的所有版权归个人所有,如需转载请注明版权信息。
我采用多文件的形式根据命令行的输入,求两个数的加,减,乘,除运算。下面我将分别列出各个文件的代码供大家参考。
add.h
#ifndef _ADD_H #define _ADD_H int add(int a, int b); #endifadd.c
int add(int a, int b) { return (a + b); }sub.h
#ifndef _SUB_H #define _SUB_H int sub(int a, int b); #endif
sub.c
int sub(int a, int b) { return (a - b); }
mul.h
#ifndef __MUL_H #define __NUL_H int mul(int a, int b); #endif
mul.c
int mul(int a, int b) { return (a * b); }
div.h
#ifndef __DIV_H #define __DIV_H double my_div(int a, int b); #endifdiv.c
double my_div(int a, int b) { return ((double)a / (double)b); }
main.c
#include <stdio.h> #include <stdlib.h> #include "add.h" #include "sub.h" #include "mul.h" #include "div.h" int main(int argc, char *argv[]) { int i1 = 0; int i2 = 0; if(argc < 3) { printf("请输入数字\n"); } else { i1 = atoi(argv[1]); i2 = atoi(argv[2]); printf("%d plus %d is %d\n",i1,i2,add(i1,i2)); printf("%d sub %d is %d\n",i1,i2,sub(i1,i2)); printf("%d mul %d is %d\n",i1,i2,mul(i1,i2)); printf("%d div %d is %f\n",i1,i2,my_div(i1,i2)); } return 0; }
Makefile
.PHONY:clean OBJECTS=main.o add.o sub.o mul.o div.o main:$(OBJECTS) gcc -Wall -g $^ -o $@ main.o:main.c gcc -Wall -g -c $< -o $@ add.o:add.c add.h gcc -Wall -g -c $< -o $@ sub.o:sub.c sub.h gcc -Wall -g -c $< -o $@ mul.o:mul.c mul.h gcc -Wall -g -c $< -o $@ div.o:div.c div.h gcc -Wall -g -c $< -o $@ clean: rm -f main $(OBJECTS)
工程文件到此列举结束。
关于Makefile的编写,这里我们要注意几点事项。
1.Makefile的命令要以tab键开始,在linux中tab键要设置成4个空格的长度。(设置方法这里就不多说了)
2.在这里编写的Makefile文件只是最简单的Makefile文件,这是我们学习的第一步。
最后:本篇博文的所有版权归个人所有,如需转载请注明版权信息。
相关文章推荐
- linux下的C语言开发(makefile编写) 02
- linux下的C语言开发(makefile编写)
- linux下的C语言开发(makefile编写)
- linux下的C语言开发(makefile编写)
- 学习c语言遇到的一些问题(2)(Linux)(makefile)
- linux 下C语言编程库文件处理与Makefile编写
- Linux学习之Makefile文件的编写
- Makefile学习笔记1:Linux平台Makefile文件的编写基础篇(zz)
- linux下的C语言开发(makefile编写)
- 【转】 linux下的C语言开发(makefile编写)
- linux下的C语言开发(makefile编写)
- linux下的C语言开发(makefile编写)
- Linux 学习笔记之Makefile单个c文件的编写
- Linux Makefile文件编写与使用学习
- linux下的C语言开发(makefile编写)
- Linux下的C语言开发(Makefile编写)
- linux下的C语言开发(makefile编写)
- linux学习笔记一:在linux编写及调试c语言
- 在Linux下用C语言写一个小程序实现一个进度条编写Makefile来进行运行
- Linux的Makefile和Kconfig框架学习及编写规则