2012-04-30 2 views
10

Я знаю, что этот вопрос может показаться странным, потому что GLib является библиотекой переносимости, но насколько портативен он? Чтобы назвать один пример: работает ли GLib (включая GObject) на микроконтроллерах или зависит от какой-либо операционной системы?Насколько переносимым является GLib?

Существуют ли какие-либо ограничения на то, где я могу использовать GLib, или он будет работать везде, где можно запустить код C?

ответ

6

Единственный ресурс, я мог бы найти на то, что зависимости от БОЙКОГО находятся здесь:

Compiling the GLib package

Посмотрите в разделе «Зависимости» - в неопциональные зависимости кажутся:

  • iconv функция
  • gettext функция
  • резьбонарезной implemen ставляют
  • PCRE library

Это означает, что вам необходимо будет предоставить (или порт), каждый из них к тому, что целевая система (например, микроконтроллер). Хотя это не непреодолимый барьер, реализация потоковой передачи обычно подразумевает некоторую форму операционной системы.

Также стоит отметить, что GLib, по-видимому, зависит от среды «Hosted» C, поэтому вам также потребуется иметь стандартную библиотеку C, перенесенную в целевую среду (в отличие от «Free-standing», C, подмножество стандарта C не требует переноса стандартной библиотеки C). См. Hosted and Free-Standing Environments. Опять же, это обобщение подразумевает как минимум базовую форму операционной системы.

Смежные вопросы