c – 便携式共享对象?
是否可以像Windows中的DLL一样以可移植的方式使用共享对象文件? 我想知道是否有一种方法可以为Linux提供一个可以使用的编译库.以同样的方式,您可以在Windows中编译DLL,它可以在任何其他Windows上使用(好吧,不是任何其他Windows,但在大多数情况下它可以). 这可能在Linux中吗? 编辑: 最佳答案
我强烈建议使用LSB app / library checker.它会告诉你如果你:
>正在使用某些发行版上没有的扩展名 您可以获得more information here以及下载该工具.它易于运行..只需解压缩它,运行perl脚本并将浏览器指向localhost ..其余的是浏览器驱动的. 使用该工具,您可以轻松地获得您的库/应用程序LSB认证(两个版本),并使发行版打包机的工作更容易. 除此之外,只需使用类似libtool(或类似)的东西来确保您的库安装正确,为不想链接DSO的人提供静态对象(您的库需要时间才能出现在大多数发行版中),所以写一个便携式程序,我不能指望它存在)并很好地评论你的公共接口. 对于图书馆,我发现Doxygen效果最好.文档非常重要,它肯定会影响我选择的库以用于任何给定的任务. 实际上,再次检查应用程序检查程序,它将为您提供可移植性问题报告,这将需要一年的时间让图书馆在野外出现以获得其他方式. 最后,尝试使您的库容易“放入树中”,因此我不必静态链接它.正如我所说,它可能需要几年才能在大多数发行版中变得普遍.我更容易抓住你的代码,将它放在src / lib中并使用它,直到你的库是常见的.请,请给我单元测试,TAP(测试任何协议)是一个很好的,可移植的方式来做到这一点.如果我破解你的图书馆,我需要(快速)知道我是否打破了它,特别是在树或原地修改它时(如果存在DSO). (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |