Я пытаюсь вызвать простую c функцию из go с помощью cgo
Файлы имеют следующий вид:
goFile. go:
package main
//#include "cFile.h"
import "C"
func main() {
C.printInC()
}
cFile.h:
void printInC();
cFile. c:
#include "cFile.h"
#include <stdio.h>
void printInC(){
printf("Test");
}
Выполнение go build goFile.go
выдает следующее исключение:
C:/TDM-GCC-64/bin/../lib/gcc/x86_64-w64-mingw32/9.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: $WORK\b001\_x002.o: in function `_cgo_f9774dcf54b4_Cfunc_printInC':
/tmp/go-build/cgo-gcc-prolog:49: undefined reference to `printInC'
collect2.exe: error: ld returned 1 exit status
Я не совсем уверен, почему это не работает, я посмотрел несколько учебных пособий для cgo, которые реализовать вызов c функций точно так же, без проблем.