У меня есть библиотека, написанная в Вала, которая всегда работала отлично, создавая файл .vapi
для себя, я думаю, потому что это бесплатная операция с valac
, но я не уверен в этом. Я пошел и пытался использовать VAPIGEN_CHECK
в моем configure.ac
файл и связанный с ним VAPIGEN_MAKEFILE
в моем Makefile.am
и теперь я получаю:Создание файла Vapi для библиотеки Vala
error: The type name `GLib.TypeInstance' could not be found
Мой файл, соответствующий .gir
содержит:
<field name="parent_instance">
<type name="GObject.TypeInstance" c:type="GTypeInstance"/>
</field>
Таким образом, ошибка, кажется, имеет смысл потому что я не могу найти класс GObject.TypeInstance
в любом файле .vapi
, но GTypeInstance
находится в одном из заголовков GLib.
Должен ли я делать это так, если я пишу все в Вале? Есть ли вероятность, что этого не хватает в Vapi?
Редактировать: Возможно, только из-за того, что я не получил GLib.Object
, который, как я думал, был неявным. Все еще пытаюсь исправить что-то еще, что мешает этому, но как только это будет сделано, я обновлю это, чтобы сказать, действительно ли это имеет значение.
Использование '--vapi' имеет смысл, явно устанавливая' GLib.Object', поскольку базовый класс действительно работал. Я просто пытался сгенерировать '.deps', используя' vapigen', который я сделал, так или иначе, что я просто исключил правило для Vapi. – geoffjay