在Windows 下使用Go 1.7 建置DLL
嘗試在Windows 上使用Go 1.7 編譯DLL 時,您可能會遇到錯誤訊息“ -buildmode=windows/amd64 上不支援共享”。這是因為 -buildmode=shared 標誌對於 1.10 之前的 Go 版本中的 Windows 系統不可用。
Go 1.10 及更高版本中的解決方案
隨著發布Go 1.10 引入了 -buildmode=c-shared 標誌,允許在 Windows 上編譯 DLL。要建立 DLL,只需使用以下命令:
go build -o helloworld.dll -buildmode=c-shared
標頭相容性
Go 產生的標頭主要與 GCC 相容。但是,如果您的 DLL 僅公開 C 類型數據,則這不會造成重大問題。例如,LoadLibrary 可以在沒有 header 的 Visual Studio 中使用。
舊解決方案
如果您需要使用1.10 之前的Go 版本構建DLL,可以參考轉到原始帖子中鏈接的Go 開發者論壇上的討論線程以獲取替代解決方案。
以上是如何在 Windows 上使用 Go 建置 DLL?的詳細內容。更多資訊請關注PHP中文網其他相關文章!