大佬教程收集整理的这篇文章主要介绍了如何在Linux上的项目中的一个共享库(.so)中修复?,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
例如,
>如果您更改了库的内部函数之一的行为,则可能不需要重新编译.
>如果您更改了应用程序已知的结构的大小(例如,通过添加成员),则需要重新编译,否则库和应用程序会认为结构比它小,并且在库时会崩溃尝试读取应用程序未写入的额外未初始化成员.
>如果更改应用程序中可见的任何函数的参数的类型或位置,因为库将尝试从堆栈中读取比应用程序放置的更多参数(这是这种情况) C,在C参数类型中是函数签名的一部分,因此app将拒绝运行,而不是崩溃).
经验法则(对于生产版本)是,如果您没有意识到您正在维护二进制兼容性,或者不确定二进制兼容性是什么,那么您应该重新编译.
以上是大佬教程为你收集整理的如何在Linux上的项目中的一个共享库(.so)中修复?全部内容,希望文章能够帮你解决如何在Linux上的项目中的一个共享库(.so)中修复?所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。