加入收藏 | 设为首页 | 会员中心 | 我要投稿 云计算网_泰州站长网 (http://www.0523zz.com/)- 视觉智能、AI应用、CDN、行业物联网、智能数字人!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

Ubuntu下的进行动态链接库创建和使用的技巧

发布时间:2021-11-21 18:45:01 所属栏目:PHP教程 来源:互联网
导读:这里的是Ubuntu下的进行动态链接库创建和使用的方法。 1.创建实验程序dll_fun.c #include stdio.h void dll_function(const char* szString) { printf(%sn, szString); } 2.编译生成动态链接库 首先生成生成o文件 gcc -c -fPIC dll_fun.c //这里一定要加上-

这里的是Ubuntu下的进行动态链接库创建和使用的方法。
 
1.创建实验程序dll_fun.c
 
#include <stdio.h>
        void dll_function(const char* szString)
        {
                printf("%sn", szString);
        }
 
2.编译生成动态链接库
 
首先生成生成o文件
 
gcc -c -fPIC dll_fun.c //这里一定要加上-fPIC选项,不然下一步编译失败
 
再编译下
 
gcc -shared -fPIC -o libdllfun.so dll_fun.o //生成动态链接库libdllfun.so
 
3. 将生成的文件拷贝到/usr/lib
 
4.创建调用动态库方法main.c
 
void dll_function(const char* szString);
        int main()
        {
              dll_function("This is the words of the dll function!!!!!!");
              return 0;
        }
 
5.编译main.c生成可执行文件
 
6.执行./main 可得  This is the words of the dll function!!!!!!
 
7.编写julia程序main.jl
 
ccall((:dll_function,"libdllfun"),Void,(Ptr{Uint8},),"Hello GONG Qingkui")
 
8.编译运行 julia main.jl
 
得道结果Hello GONG Qingkui
 
ps:使用环境变量指出链接库文件地址      export LD_LIBRARY_PATH=/home/owner/test/lib

(编辑:云计算网_泰州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读