用Go 1.7构建一个dll [英] Building a dll with Go 1.7
本文介绍了用Go 1.7构建一个dll的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
有没有办法在Windows下构建一个针对Go v1.7的dll?
我试过了一个经典的 go build -buildmode = shared main.go
但获得
-buildmode = shared不支持在windows / amd64上
更新
好的,我已经得到了我的回答。对于那些感兴趣的人:
https://groups.google .com / forum /#!topic / golang-dev / ckFZAZbnjzU
解决方案
go build -buildmode = c-archive github.com/user/ExportHello
==== >将生成 ExportHello.a
, ExportHello.h
以 ExportHello.a
中的内建函数并在 Hello2.c中重新导出
gcc -shared -pthread -o Hello2.dll Hello2.c ExportHello.a -lWinMM -lntdll -lWS2_32
====>会产生 Hello2.dll
Is there a way to build a dll against Go v1.7 under Windows ?
I tried a classic
go build -buildmode=shared main.go
but get
-buildmode=shared not supported on windows/amd64
update Ok, I've got my answer. For those who are interested : https://groups.google.com/forum/#!topic/golang-dev/ckFZAZbnjzU
解决方案
go build -buildmode=c-archive github.com/user/ExportHello
====> will build ExportHello.a
, ExportHello.h
Take the functions built in ExportHello.a
and re-export in Hello2.c
gcc -shared -pthread -o Hello2.dll Hello2.c ExportHello.a -lWinMM -lntdll -lWS2_32
====> will generate Hello2.dll
这篇关于用Go 1.7构建一个dll的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文