社区
Linux_Kernel
帖子详情
动态库的版本管理
JassonRose
2015-04-08 12:05:18
1. 在linux下用./configure , make , make install编出来的库默认是带版本管理的。如:
libburn.so.4 -> libburn.so.4.87.0
libburn.so.4.87.0
后面都通过link的方式连接到带版本号后缀的库上面去了。 生成的这种库好像在android ndk下用不了。
那么有没有什么编译选项,或者配置来禁止这种带版本管理的编译连接呢。 直接生成一个*.so就好了。
希望能得到满意的答案。谢谢
...全文
533
4
打赏
收藏
动态库的版本管理
1. 在linux下用./configure , make , make install编出来的库默认是带版本管理的。如: libburn.so.4 -> libburn.so.4.87.0 libburn.so.4.87.0 后面都通过link的方式连接到带版本号后缀的库上面去了。 生成的这种库好像在android ndk下用不了。 那么有没有什么编译选项,或者配置来禁止这种带版本管理的编译连接呢。 直接生成一个*.so就好了。 希望能得到满意的答案。谢谢
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
ForestDB
2017-08-15
打赏
举报
回复
Linux下的so有三个名字: file name:libfoo.so.1.0.0.0 so name:libfoo.so.1 loader name:libfoo.so 其中生成so的时候输出file name;然后安装so的时候由ldconfig产生so name,so name也是埋在binary中的name;最后连接的时候自行产生loader name,即建立符号链接。 http://www.yolinux.com/TUTORIALS/LibraryArchives-StaticAndDynamic.html http://www.cprogramming.com/tutorial/shared-libraries-linux-gcc.html http://tldp.org/HOWTO/Program-Library-HOWTO/index.html
sandylovefun
2017-08-08
打赏
举报
回复
大神你好 有个Windows驱动安装的问题想咨询一下您
pottichu
2015-04-08
打赏
举报
回复
android 下,你自己写个 Android.mk 不就行了。
zhxianbin
2015-04-08
打赏
举报
回复
没用过 android ndk,但我想不能用 和 有版本号 没啥关系
QT cmake项目编译构建
管理
视频课程
QT cmake常用语法知识具体实践 QT cmake常用用法具体实践 QT cmake编译链接选项
管理
具体实践 QT cmake多项目组织
管理
具体实践 QT cmake
版本
信息
管理
具体实践 QT cmake
动态库
和静态库
管理
具体实践 QT cmake 模块
管理
...
Linux
动态库
版本
管理
说明 由于
动态库
支持动态链接和动态装载,使用中具有很强的动态性,在大型项目中如果缺乏约束,很容易出现
版本
问题,导致程序运行异常,例如: 不小心使用旧
版本
的
动态库
文件替代了新
版本
的
动态库
。 新
版本
动态库
中的接口发生变化而引起,尽管在设计
动态库
时应该向下兼容,然而要保证
动态库
完全向下兼容却是不可能的。 新版
动态库
引入了一些新的Bug。 … 解决方法 解决
版本
问题的首要工作就是标识每一个
版本
,这就是
版本
号的作用,但是仅仅使用
版本
号并不能解决问题,甚至破坏了
动态库
的动态性,因为
版本
号不同,不同
版本
的
动态库
Linux
动态库
管理
linux
动态库
版本
管理
linux
动态库
及
动态库
的
版本
管理
Linux下
动态库
有三个名字:real name、so name、link name。 real name:共享库本身的名字,命名格式为libname.so.x.y.z,lib是前缀,name是共享库的名字,so是后缀,x是主
版本
,y是次
版本
号,z是发布
版本
号。 主
版本
号、次
版本
号和发布
版本
号的意义如下: 主
版本
号:表示库的重大升级,比如改变了原有的接口。不...
Qt创建
动态库
并添加
动态库
版本
号
在使用Qt开发过程中,我们有时需要使用Qt创建
动态库
,通常情况下创建的
动态库
没有
版本
号,为了方便追综
版本
,需要为
动态库
也添加
版本
号,这样方便代码的
版本
控制,那么如何操作了,只需要在Qt的工程文件中(.pro)添加这个字段即可VERSION = 5.5.0但这样创建的
动态库
会在生成的
动态库
名称上把主
版本
也加上去,如mydemo5.dll,那么如何创建mydemo.dll的
动态库
并带
版本
号呢,其实添加VERSION后会生成资源文件mydemo_resource.rc,在这个资源文件里改
版本
号即可,如果添加了这个
Linux_Kernel
4,436
社区成员
17,459
社区内容
发帖
与我相关
我的任务
Linux_Kernel
Linux/Unix社区 内核源代码研究区
复制链接
扫一扫
分享
社区描述
Linux/Unix社区 内核源代码研究区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章