Windows で Go 1.7 を使用して DLL をビルドする
Windows で Go 1.7 を使用して DLL をコンパイルしようとすると、エラー メッセージ「 -buildmode=shared は Windows/amd64 ではサポートされていません。」これは、Go バージョン 1.10 より前の Windows システムでは -buildmode=shared フラグが使用できないためです。
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 はヘッダーなしで Visual Studio で使用できます。
レガシー ソリューション
1.10 より前の Go バージョンで DLL をビルドする必要がある場合は、次を参照してください。代替ソリューションについては、元の投稿にリンクされている Go 開発者フォーラムのディスカッション スレッドにアクセスしてください。
以上がWindows 上で Go を使用して DLL を構築するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。