c - 为什么使用不同的 C 库?

标签 c glibc libc

我正在研究在 Linux 上使用 Apple 的 Blocks 运行时和 clang,我发现了 incompatibility issues与 GNU libc 的 <unistd.h> 。环顾四周以获取更多信息,我发现了一位用户 suggesting :

Oh well time to use a different libc? I hear FreeBSD has a nice one! :-)

正如表面上所暗示的那样,这是使用不同 libc 的一个相当愚蠢的理由。 。但这确实让我想到:

您为什么要交换 C 库?使用其中一种相对于另一种是否有优点/缺点(例如 GNU libc 与 FreeBSD libc)? (我想这也适用于 libstdc++libc++ )。

最佳答案

我可以立即想到三个原因。

  1. 遗留原因:您有针对旧的 Rogue Wave 编写的代码,
  2. 尺寸:有 musldietlibc ,
  3. 使用 Bionic 执行 Android 交叉编译

关于c - 为什么使用不同的 C 库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21082738/

相关文章:

c - 段错误和共享库使用 - Vega 7000 POS

c - 在 C 中的函数之间传递指向结构的指针数组的问题

c - Visual Studio未分配的指针不为NULL

gcc - glibc安装: cannot compute suffix of object files

python - 在 Python ctypes 中加载 C 标准库的可移植方法

c - fread/fwrite 将 size 和 count 作为参数的基本原理是什么?

C while循环不执行

c - getpwnam_r 内存泄漏

python - 如何安排子流程?

linux - 在嵌入式 Linux 平台上将 libc 与 JNI 代码链接 (GuruPlug)