找回密码
 请使用中文注册

手机号码,快捷登录

手机号码,快捷登录

Linux中动态库的创建与使用

2023-7-29 08:35| 发布者: 开心| 查看: 314| 评论: 0

阅读字号:

摘要: 动态库新建 mylib.c 文件#include< stdio.h >void mylib(void);void mylib(void){ printf("This is mylibn");}在 Ubuntu 编译编写测试代码 test.c#include < stdio.h >voi ...
    动态库
新建 mylib.c 文件
#include< stdio.h >void mylib(void);void mylib(void){  printf("This is mylibn");}
在 Ubuntu 编译

编写测试代码 test.c
#include < stdio.h >void mylib(void);int main(void){  mylib();  return 0;}
编译测试文件 test.c

-l:指定动态库的库名-L:指定动态库的查找位置。-L . 表示在当前目录下去查找
运行测试 a.out

在动态库使用是,系统会默认去/lib,/usr/lib 目录下去查找动态函数库,如果我们使用的库不在里面,就会提示错误。解决这个问题有三种方法。
第一种方法:
将生成的动态库拷贝到/lib 或者/usr/lib 里面去,因为系统会默认去这两个路径下寻找。
第二种方法:
把我们的动态库所在的路径加到环境变量里面去,比如我们动态库所在的路径为/home/test,我们就可以这样添加,但是这种方法只在当前设置的窗口有效。
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/topeet/debug/linux_
我们加入环境后,运行 a.out

第三种方法:
修改 ubuntu 下的配置文件/etc/ld.so.conf,我们在这个配置文件里面加入动态库所在的位置,然后使用命令 ldconfig 更新目录。
我们输入以下命令编辑/etc/ld.so.conf 文件,如下图所示:

修改完文件保存退出,输入 ldconfig 更新目录。运行测试如下图所示:

路过

雷人

握手

鲜花

鸡蛋

最新评论

QQ|Archiver|手机版|家电维修论坛 ( 蜀ICP备19011473号-4 川公网安备51102502000164号 )

GMT+8, 2025-4-30 17:39 , Processed in 0.126671 second(s), 18 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

返回顶部