Linux系统下gcc生成静态库/动态库并使用
前言
Linux系统下,一些公用的函数我们常常生成一个函数库,方便其它函数调用、链接。静态库编译时会直接链接到主函数中,运行时就不需要了。动态库反之,在运行主函数时才会链接
文章目录 前言 Linux系统下,一些公用的函数我们常常生成一个函数库,方便其它函数调用、链接。静态库编译时会直接链接到主函数中,运行时就不需要了。动态库反之,在运行主函数时才会链接。 一、提前准备好示例程序 1.main.c 2.sub.c / sub.h 3、hello.c / hello.h 二、使用gcc生成静态库 1.生成对应.o文件 gcc -c hello.c gcc -c sub.c ls -l 2.生成对应.a文件 ar -crv libmyhello.a hello.o ar -crv libmysub.a sub.o ls -l 3、连接静态库运行函数 gcc main.c libmyhello.a sub.a -o main ./main 三 、使用gcc生成动态库 1、生成.so文件 gcc -shared -fPIC -o libhello.so hello.o gcc -shared -fPIC -o libsub.so sub.o ls -l 2、 使用动态库运行程序 注意,使用动态库时程序是在 /usr/lib 下找动态库linux动态库,要先将动态库复制到此目录下 mv libhello.so /usr/lib mv lib sub.so /usr/lib gcc -o hello main.c -L. -lhello -lsub ls -l ./main (编辑:晋中站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |