静态库和动态库
来源:互联网 发布:淘宝开店认证在哪里 编辑:程序博客网 时间:2024/05/18 01:55
[问题]
[解答]
[问题] Linux 静态库转换为动态库 (xxx.a -> xxx.so)
[解答] 这种方法不是一定能成功的, 有些symbol从静态库转为动态库的时候, 会失效, 从而导致转换失败
*.a files are just archives of .o object files, so all you need to do is unpack the archive and repackage them as a shared object (.so ).
cd ./
ar -x xxx.a
gcc -shared *.o -o xxx.so
[问题] linux将 /usr/local/lib/ 目录添加到ld搜索目录的方法
[解答] sudo vi /etc/ld.so.conf.d/usr_local_lib.conf
输入下面这行内容
/usr/local/lib/
执行"sudo ldconfig"使得上面的更改生效
[问题] unix下查看静态库和动态库是32位还是64位
[解答] $ objdump -a libmpfr.a
$ file /lib/libc.so.7
[问题] github 上下载的ZIP包在Linux下用unzip解压缩,总会出错,提示 symlink error: File name too long
[解答] 用busybox自带的unzip解压没问题
REF: http://lumte.com:84/archives/2014/07/11/433.html
[问题] Linux/Unix 动态连接库路径设置相关的环境变量
[解答] LD_LIBRARY_PATH 查看该环境变量的值: echo ${LD_LIBRARY_PATH}
[问题] Linux/Unix 动态连接库路径设置相关的命令
[解答] ldconfig
用一个数学的函数表达一下: f(/etc/ld.so.conf) = /etc/ld.so.cache
/etc/ld.so.conf是一个集合, 用数学的方式表达: { /etc/ld.so.conf.d/*.conf }
[问题] 有时候安装一个库, 安装目录在/lib64/下, 仍然找不到该库.
安装subunit时候遇到过这种情况.
sudo yum install -y subunit-0.0.21-2.el7.x86_64
编译报错信息: /usr/bin/ld: cannot find -lsubunit
[解答]
通过网上学的检测方法: gcc -lsubunit --verbose 确实存在问题(/usr/bin/ld: cannot find -lsubunit).
但是gcc -lpthread --verbose 不存在这样的问题.
对比/lib64/libsubunit* 和 /lib64/libpthread* 发现一个区别, 库文件 /lib64/libpthread.so存在,
而库文件/lib64/libsubunit.so却不存在, 建议一个软连接即可. sudo ln -s /lib64/libsubunit.so.0.0.0 /lib64/libsubunit.so
- 动态库和静态
- 静态库和动态库
- 静态库和动态库
- 动态库和静态库
- 静态库和动态库
- 静态库和动态库
- 静态库和动态库
- 静态库和动态库
- 动态库和静态库
- 静态库和动态库
- 静态库和动态库
- 静态库和动态库
- 静态库和动态库
- 静态库和动态库
- 动态库和静态库
- 动态库和静态库
- 静态库和动态库
- 静态库和动态库
- python中reduce实现阶乘
- TCP PUSH
- 关于修改 AchartEngine 源码的修改
- 第八周项目2—数据结构之自建算法库—链串
- android6.0动态获取权限
- 静态库和动态库
- String的== 和equals 比较
- 【openjudge 计算概论(A)】[函数递归练习(1)]
- Linux shell 中显示vim所打开的文件名方法
- eclipse+ADT 进行android应用签名打包详解
- 【初学笔记】数据库范式
- sudo apachectl -k stop & sudo apachectl -k start 常见错误
- Ubuntu LTS 系统学习使用体会和实用工具软件汇总 6.04 8.04 10.04 12.04 14.04 16.04
- 网络通讯类的逆向