Go-Code in eine DLL unter Windows kompilieren
Es stellt sich die Frage nach der Möglichkeit, Go-Code unter Windows mit der Go-Version in eine DLL zu kompilieren 1.7. Beim Versuch, den typischen Befehl go build -buildmode=shared main.go zu verwenden, wird die Fehlermeldung „-buildmode=shared wird unter Windows/amd64 nicht unterstützt“ angezeigt.
Lösung
Ab Go 1.10 wird die Option -buildmode=c-shared jetzt auf Windows-Plattformen unterstützt. Dies bedeutet, dass das Kompilieren einer DLL in Go zu einem unkomplizierten Prozess geworden ist, der nur einen Befehl erfordert:
go build -o helloworld.dll -buildmode=c-shared
Es ist zu beachten, dass alle exportierten Typen C-kompatibel sein müssen, damit dieser Prozess erfolgreich ist. Darüber hinaus sind Windows-Header zwar nur vollständig mit GCC kompatibel, der Aufruf von LoadLibrary in Visual Studio ist jedoch möglicherweise auch ohne sie möglich, wenn nur C-Typen verfügbar gemacht werden.
Das obige ist der detaillierte Inhalt vonKann Go 1.7 unter Windows in eine DLL kompiliert werden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!