c - C 中的共享库和二进制文件

标签 c shared-libraries freebsd

我接手了一个相当大的C代码。有许多遗留二进制文件需要旧版本的共享库。服务器从来没有这些确切库的版本。我可以重新编译或设置将旧版本连接到新版本的符号链接(symbolic link)。设置符号链接(symbolic link)需要一些时间——有没有标准或智能的方法来做到这一点?我对此很陌生,如果有任何提示,我将不胜感激。这是所有 C 和 FreeBSD 环境。

谢谢。

最佳答案

一般来说,在使用新库更新遗留代码时,最好通过针对新库及其包含重新编译源代码来执行检查。这将允许您使用编译器检查新旧库在数据类型、函数签名等方面的不一致。

通过重新编译,您还可以检查新库是否提供了您需要的所有依赖项。

最后,重新编译将帮助您检查您是否确实能够重新编译和链接所有内容并拥有所有必要的组件。

如果使用符号链接(symbolic link)等走捷径,我会感到不舒服。

关于c - C 中的共享库和二进制文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12096480/

相关文章:

c - 删除文件中的错误(C 编程)

c - 如何检测本地主机关闭的连接?

c - 如何在 os x 上用 clang 编译共享库

shell - 检测脚本是否源自 "/bin/sh"

c++ - 如何将数据从线程传递到父进程?

python - 为什么 Python 运行 C++ 函数比 C++ 通过其 main() 函数运行自己的函数更快?

java - Android Studio 动态加载库

c++ - 我如何在 FreeBSD 上禁用 ASLR?

python - kqueue 跟踪文件更改 - 在处理以前的事件时有可能丢失事件吗?

c - 有没有办法在执行过程中更改 sigaction 标志?