【发布时间】:2012-04-30 14:01:23
【问题描述】:
我知道这个问题可能听起来很奇怪,因为 GLib 是一个可移植库,但它的可移植性如何?举一个例子:GLib(包括 GObject)是在微控制器上运行还是依赖于某种操作系统?
我可以在哪里使用 GLib 是否有任何限制,或者它会在可以运行 C 代码的任何地方运行吗?
【问题讨论】:
标签: portability glib
我知道这个问题可能听起来很奇怪,因为 GLib 是一个可移植库,但它的可移植性如何?举一个例子:GLib(包括 GObject)是在微控制器上运行还是依赖于某种操作系统?
我可以在哪里使用 GLib 是否有任何限制,或者它会在可以运行 C 代码的任何地方运行吗?
【问题讨论】:
标签: portability glib
我能找到的关于 GLib 依赖项的唯一资源是:
查看“依赖项”部分 - 非可选依赖项似乎是:
iconv 函数gettext 函数这意味着您需要将其中的每一个都提供(或移植)到任何目标系统(例如微控制器)。虽然不是不可逾越的障碍,但线程实现通常意味着某种形式的操作系统。
另外值得注意的是,GLib 似乎依赖于“托管”C 环境,因此您还需要将标准 C 库移植到目标环境(而不是“独立”C环境中,标准 C 的子集不需要移植标准 C 库)。见Hosted and Free-Standing Environments。同样,这通常意味着至少是一种非常基本形式的操作系统。
【讨论】: