C语言创建共享库(动态库)步骤
2024-09-02 19:28:14
C语言创建共享库(动态库)步骤:
创建sth.c,共享库源文件:
//sth.c库源程序
unsigned long long sth(unsigned int x, unsigned int y)
{
return (x+y+x*y);
}
创建测试文件:
//test.c
#include<stdio.h>
#include<stdlib.h> int main(int argc, char *argv[])
{
unsigned int x, y;
sscanf(argv[], "%u", &x);
sscanf(argv[], "%u", &y); long long res = sth(x, y);//调用共享库文件的定义的函数
printf("answer is %u\n", res);
return ;
}
生成库文件:
首先使用 gcc 的-fPIC 选项为动态库构造一个目标文件:
gcc -fPIC -Wall -c sth.c
接下来,使用-shared
选项和已创建的目标代码,生成一个动态库libsth.so:
gcc -shared -o libsth.so sth.o
下面编译测试主程序,它将会链接到刚生成的动态库 libsth.so:
gcc -o test test.c -L . -lsth
sudo cp libsth.so /lib
./test
answer is
最新文章
- 苹果 OS X 系统U盘重装-抹盘重装、系统盘制作
- java基础1_标识符,数据类型
- 人人都是 DBA(II)SQL Server 元数据
- Mac 下安装PHP遇到的问题
- mssqlserver 分日志(日志文件过大)
- JAVA基础知识之Collections工具类
- jQuery轮播图
- Crypto API加密通信流程
- 正确理解ContentPresenter
- Oracle数据库表的备份和数据表的删除操作
- HTML5新增结构标签
- Apache FileUpload实现文件上传
- GitHub安装失败
- mybatis里面的 #{}和${}
- [USACO09DEC]牛收费路径Cow Toll Paths
- ejabberd编译更新脚本
- Timer定时方法(间隔时间后执行)
- Javascript高级编程学习笔记(84)—— Canvas(1)基本用法
- Oracle数据库 基础SQL语句练习
- WebSocket 实现链接 群聊(low low low 版本)