当前位置:首页 > 操作系统 > Linux

linux库文件编程

为首先按照老师的博客将加减乘除代码写上去

add.c
int add(int var1,int var2){ return var1 + var2; }

 

mod.c
int mod(int var1, int var2){ return var1 % var2; }

 

 

mul.c
int mul(int var1,int var2){ return var1 * var2; }
sub.c
int sub(int var1, int var2){ return var1 - var2; }

testCal.c

#include <stdio.h>

#include "cal.h"

int main(int argc, char **argv)
{
    int var1;
    int var2;
    printf("please input the var1: ");
    scanf("%d", &var1);
    printf("please input the var2: ");
    scanf("%d", &var2);
    printf("%d add %d is %dn", var1, var2, add(var1, var2));
    printf("%d sub %d is %dn", var1, var2, sub(var1, var2));
    printf("%d mul %d is %dn", var1, var2, mul(var1, var2));
    printf("%d div %d is %dn", var1, var2, div(var1, var2)) test
    printf("%d mod %d is %dn", var1, var2, mod(var1, var2));               

    return 0;
}

 由于我的ubuntu系统好像有点问题用不了老师的makefile文件,所以我是采用手工命令

gcc -c add.c sub.c mui.c div.c mod.c testCal.c

gcc -o testCal testCal.o add.o sub.o mod.o mul.o 

生成了testcal文件大小为8696字节也可以执行命令

然后生成静态库

ar rcs libgjl.a add.o sub.o mul.o div.o mod.o

创建库文件的接口文件

gcc -o testCal testCal.c -static -L. -lgjl

可执行文件大小为958552字节

三.动态库

gcc -shared -fPIC -o libgjl.so add.o sub.o mul.o div.o mod.o

gcc -o testCal testCal.c -L. lgjl

生成动态库可执行文件大小为8544字节

 

.

 

 

 

 

原文:https://www.cnblogs.com/gongjialong/p/12545561.html


【说明】本文章由站长整理发布,文章内容不代表本站观点,如文中有侵权行为,请与本站客服联系(QQ:254677821)!

相关教程推荐

其他课程推荐