网上有很多使用cgo的教程了,在这里分享一种非常简单的windows环境下完成cgo编译的方法。
首先,下载win环境下gcc下载:TDM gcc,安装后会自动加入到PATH下,cmd里就能使用gcc命令。我的电脑上cgywin在使用gcc总是会出问题,如果cgywin的gcc可以正常编译,就无须再另外下载gcc了。
编写含C语言的go文件:
package cgotest /* #include <stdio.h> */ import "C" func PrintHello() { C.puts(C.CString("Hello,world\n")) }
在此目录下创建批处理文件cgo.bat:
C:\Go\pkg\tool\windows_386\cgo cgotest.go go install
双击运行cgo.bat就会在该目录下生成 _obj 文件夹:
且会在GOPATH下的pkg生成我们要调用的 cgotest.a 静态链接库
再需要的源码中的import加入"cgotest"即可。