linux .so 的使用
来源:互联网 发布:godaddy域名申请 编辑:程序博客网 时间:2024/06/14 17:59
1、创建 .so
比如我现在又show.h show.cpp main.cpp 三个文件,那么编译出.so可以这样来。
g++ -c -fPIC show.cpp -o show.o
g++ -shared show.o -o libshow.so
这样就得到了.so 文件
2、使用.so
g++ show.cpp main.cpp -o main -I./ -L./ -lshow
就可以得到可执行文件main了
3、修改环境变量
1) 直接运行会失败,因为-L只是告诉g++编译时去哪里检查.so,但程序运行时默认寻找.so的Path是/usr/lib,所以需要将.so文件copy到/usr/lib;
2) 也可以创建软链接:ln -s /home/XX/code/libshow.so /usr/lib,但是软链接有时候也会不起作用,比如说.so所在的目录g++没有访问权限。
3) 一个临时也比较有效的做法是:LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/XX/code; export LD_LIBRARY_PATH; 然后肯定就可以用啦。
command : ./main
output : Hello, I'm Show Function!
0 0
- linux .so 的使用
- Linux共享库.so的使用
- linux 使用动态so
- linux的.so文件
- Linux下的动态链接库.so文件的使用
- Linux下的动态链接库.so文件的使用
- Linux下的动态链接库.so文件的使用
- Linux下的动态链接库.so文件的使用
- Linux 下 动态链接库 .so 的生成和使用
- Linux动态链接库.so文件的创建与使用
- Linux动态链接库.so文件的创建与使用
- Linux动态链接库.so文件的创建与使用
- Linux平台使用JNI的例子 Java调用so
- Linux平台使用JNI的例子 Java调用so
- Linux平台使用JNI的例子 Java调用so
- Linux动态链接库.so文件的创建与使用
- Linux动态链接库.so文件的创建与使用
- Linux动态链接库.so文件的创建与使用
- 栈的相关知识及栈的实现
- hibernate中的多表对应关系
- iOS架构师之路:慎用继承
- Lazarus 将gb2312的MemoryStream转换成String
- 关于Spring RestTemplate乱码问题解决
- linux .so 的使用
- HTML5总结系列(二)--新增表单标签及表单属性
- Gym 100803 B Miscalculation
- 深入理解KNN算法
- 传说中的800句记7000词
- 对于数据库死锁
- 计数排序、桶排序和基数排序
- 根目录vmlinux的编译过程
- 【Android】SwipeRefreshLayout的简单使用教程。下拉刷新控件炫酷效果。