动态库
新建 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 更新目录。运行测试如下图所示:
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
-
Linux
+关注
关注
87文章
10994浏览量
206772 -
文件
+关注
关注
1文章
540浏览量
24402 -
动态库
+关注
关注
0文章
16浏览量
6194
发布评论请先 登录
相关推荐
LabView动态创建数据源的方法
DSN(Data Source Name,数据源名)。LabSQL与数据库之间的连接就是建立在DSN 基础之上的。但是这种过于麻烦,在生成操作程序时不便于安装,于是需要一种可以在LabView中直接创建数据源的方法。通过资料查证和编程验证确定了在LabView
发表于 09-23 01:53
labview中动态创建控件的问题
如题,labview 有没有动态创建的控件的办法,比如说我在 程序设计之初不知道我运行时候具体有几个LED灯泡,我想根据实际运行情况进行动态创建,类似于C++
发表于 03-17 21:03
动态库和静态库的区别
/etc/ld.so.conf.d目录下创建一个以.conf为后缀的文件,在这个文件中添加上动态库的绝对路径,最后执行sudo ldconfigldconfig命令的用途,主要是在默认
发表于 05-26 17:22
Linux系统动态库与静态库函数的使用介绍
,而是程序运行时动态的申请并调用,所以程序的运行环境中必须提供相应的库。动态函数库的改变并不影响你的程序,所以动态函数库的升级比较方便。
发表于 09-29 11:31
Linux下动态库和静态库的制作及使用
的申请并调用,所以程序的运行环境中必须提供相应的库。动态函数库的改变并不影响你的程序,所以动态函数库的升级比较方便。linux系统有几个重要
发表于 11-18 17:05
linux Qt 动态库制作以及使用方法
一、Qt动态库的制作 (1)、新建 选择目录选择需要的模块,如果需要界面则选择QtGui等。(2)、编写简单代码以及编译编写简单的打印代码,然后点击运行,之后弹出如下窗口:点击“取消”,之后可在工程
发表于 07-05 08:01
静态库与动态库的相关知识
生成.a文件5.生成可执行文件6.执行程序等待结果三、动态库的制作过程1.生成.so文件2.生成可执行文件a.out文件执行可执行文件a.out文件课后作业加减法的静态库前言本次学习的内容是静态
发表于 12-22 07:49
Linux开发_动态静态库创建与Makefile规则
介绍Linux下静态库、动态库创建方式、完成静态库、动态库调用,贴出字符串处理、时间管理两个例子代码。
评论