Linux gcc 学习
来源:互联网 发布:淘宝大学毕业证 编辑:程序博客网 时间:2024/06/07 06:16
首先建立三个文件,分别为mytest.c mylib.c mylib.h
/**********mytest.c**************/#include <stdio.h>#include <mylib.h>int main(void){ int a=10,b=20,max_num,min_num; max_num=max(a,b); min_num=min(a,b); printf("max_num=%d\n",max_num); printf("min_num=%d\n",min_num);}
/**********mylib.c***********/int max(int x,int y){ return x>y?x:y;}int min(int x,int y){ return x<y?x:y;}
/*********mylib.h************/int max(int x, int y);int min(int x, int y);编译结果的方法:
一、普通编译链接
#gcc -c -o mytest.o mytest.c
#gcc -c -o mylib.o mylib.c
#gcc -o my_test mytest.o mylib.o
#./my_test
在命令行输入上述命令可以得到如下结果:
max_num=20
min_num=10
二、通过静态链接库
1、制作静态链接库:
#gcc mylib.c -o mylib.o
#ar rc libmylib.a mylib.o
2、使用静态链接库
#gcc -o my_test mytest.c libmylib.a
#gcc -o my_test mytest.c -L./lmylib
#./my_test
同样可以得到结果:
max_num=20
min_num=10
我们都知道编译文件的时候系统会自动的去/lib、/usr/lib下查找库函数,到/usr/include下查找头文件,所上述使用静态链接库方法可以通过以下代码实现:
#cp libmylib.a /usr/lib
#cp mylib.h /usr/include
#gcc mytest.c -o my_test -lmylib
#./my_test
执行上述命令得到结果:
max_num=20
min_num=10
三、通过动态链接库
1、制作动态链接库
#gcc -shared mylib.c -o libmylib.so
#gcc mytest.c -o mytest2 -L./ lmylib
#export LD_LIBRARY_PATH=/.:$LD_LIBRARY_PATH
#./mytest2
同样得到运算结果
或是:
#cp libmylib.so /lib
#gcc mytest.c -o mytest3 -lmylib
#./mytest3
同样也可得到结果
- 【Linux学习】GCC学习
- linux 学习记录 gcc
- Linux gcc 学习
- Linux下gcc学习
- Linux - gcc 学习笔记
- Linux学习(gcc)
- LINUX学习之初学GCC
- linux学习之初识GCC
- arm-linux-gcc学习笔记
- arm-linux-gcc学习笔记
- linux基础学习之 GCC
- linux学习之初识gcc
- linux——gcc学习
- Linux之GCC入门学习
- 嵌入式linux学习 arm-linux-gcc安装
- Linux 学习之一GCC 从这开始
- Linux学习之GCC&GDB,Makefile
- linux、gcc和bash的学习网站
- Bluefish Linux下的web编辑神器-Hello,World
- 采用Stanford Parser进行中文语法解析
- load data file使用详解
- 如何判断UIScrollView滑动方向
- JavaScript -- 面向对象
- Linux gcc 学习
- Scrapy安装介绍及入门
- javascript作用域链和原型链
- Linux把内存挂载成硬盘,提高读写速度
- GOOD spring <context:annotation-config> 跟 <context:component-scan>诠释及区别
- 将图片上传到PictureBox控件中
- python 下载文件汇总
- Ant工具介绍
- bootstrap中的typeahead