美文网首页
Linux C 动态库,静态库

Linux C 动态库,静态库

作者: 庐州散人2017 | 来源:发表于2018-11-20 11:48 被阅读0次

add.h 文件

int add(int a, int b);

add.c文件

#include “add.h”

int add(int a, int b)

{

return a + b;

}

test.c文件

#include

#include “../include/add.h”

int main()

{

int a=1;

int b=2;

int c;

c=add(a,b);

printf(“1+2=%d\n”,c);

return 0;

}

编译源文件

CC=gcc

cflags = -I../include

sources = \

../src/add.c

debug: $(srouces)

$(CC) -c -fPIC -ggdb $(cflags) $(sources)

release: $(sources)

$(CC) -c -Os -fPIC $(cflags) $(sources)

生成静态库

ar -r libAdd.a *.o

生成动态库

gcc -shared -o libAdd.so *.o

调用静态库

CC=gcc

cflags = -I../include

sources = \

test.c

testStatic: $(sources)

$(CC) -o test $(sources) -lm -L ../lib -lAdd -static

调用动态库

CC=gcc

cflags = -I../include

sources = \

test.c

testDynamic: $(sources)

$(CC) -o test $(sources) -lm -L ../lib -lAdd

运行时可能找不到动态库

export LD_LIBRARY_PATH=

相关文章

  • linux下静态库和动态库创建和使用

    linux静态库 .a ===== win 静态库 .lib linux动态库 .so ==== win动态库 ....

  • 动态链接库和静态链接库

    动态库和静态库 在Win下,动态库以.dll结尾,静态库以.lib结尾。 在Linux下,动态库文件以.so结尾,...

  • 动态库 静态库

    C++静态库与动态库

  • Linux C 动态库,静态库

    add.h 文件 int add(int a, int b); add.c文件 #include “add.h” ...

  • 静态库与动态库区别

    本文动态库、静态库区别部分转载自C++静态库与动态库 程序的编译过程如上图 静态库: 之所以成为【静态库】,是因为...

  • Linux动态库

    深入探讨Linux静态库与动态库的详解(一看就懂)Linux下动态库的生成和使用Linux下动态库生成和使用转-u...

  • 2021-06-16 linux链接so

    linux 下有动态库和静态库,动态库以.so为扩展名,静态库以.a为扩展名。二者都使用广泛。本文主要讲动态库方面...

  • Objective-C库文件使用

    静态库 VS 动态库 静态库:静态库在Objective-C里面以.a或者.framework作为后缀,目前开发者...

  • Linux下的静态库和动态库

    linux下的库: linux下的库有两种:静态库和共享库(动态库)。二者的不同点在于代码被载入的时刻不同。静态库...

  • 20_链接过程简介

    关键词:静态链接、Linux下静态库的创建和使用、动态链接、 Linux下动态库的创建和使用 1. 问题 工程中的...

网友评论

      本文标题:Linux C 动态库,静态库

      本文链接:https://www.haomeiwen.com/subject/lkbtqqtx.html