Я понятия не имею, что такое «VPP», но, тем не менее, ответ: «возможно»;И вот почему:
Код Go может взаимодействовать с библиотеками C через его средство, известное как cgo
.
cgo
многогранная вещь: он позволяет вам «экспортировать» определенные функции Go определенным образом, чтобы их можно было вызывать со стороны C, и он позволяет вам вызывать функции со стороны C.Это также позволяет вам писать биты встроенного кода C, чтобы при необходимости связать его со стороной C.
Поскольку некоторое время Go собирает набор инструментов (по крайней мере, его "эталонная" реализация)для компиляции кода Go в статическую или динамическую библиотеку с C-совместимым API.
См. this .
.Теория, должно быть возможно сделать то, что вы после.Обратите внимание на некоторые возможные препятствия:
В большинстве случаев, если «платформа» позволяет вам написать «плагин» на C, это предполагает, что ваш плагин будет широко использовать собственную платформуAPI.
Обычно это означает, что ваш плагин должен включать определенные заголовочные файлы, предоставляемые платформой.
Платформе также может потребоваться, чтобы ваш плагин связывался с какой-то платформой.предоставленная библиотека (обычно совместно используемая) или библиотеки.
cgo
может выполнить все вышеперечисленное, но вам нужно будет тщательно изучить API, предоставляемый платформой, и, возможно, написать помощников Go длясделать его использование более естественным для кода Go.
Проблемы со сборкой / компоновкой (обычно местоположения заголовочных файлов и библиотек) также могут быть решены.