admin管理员组文章数量:1130349
最后更新于2022年8月17日 13:37:48
项目中用到了一些用到C库的库,比如sqlite,或者是直接import "C",都会用到Golang自带的CGO这个工具,这个工具大体来说就是会调用C库到Golang中。但是在windows环境下不存在C/C++的编译器和库,于是就会报错:exec: “gcc”: executable file not found in %PATH%
MinGW就是一个为Windows准备的C/C++库,GCC是C/C++的编译器,两者合体就能在windows下编译C/C++(这段话我抄的,应该是对的吧)。
MinGW-w64 - for 32 and 64 bit Windows MinGW的代码被托管在sourceforge,很遗憾到目前为止,最新的9.0.0版本下下来还是源码,需要进一步编译。
WinLibs standalone build of GCC and MinGW-w64 for Windows 不过,这里可以下载到编译好的9.0.0版本,解压后直接添加bin文件夹到PATH环境变量即可。
用上了,有个疑问:谁能告诉我调用C的函数怎么反射嘛,没有联想太难受了。
附上一段CGO的hello world代码:
// hello.go
package main
/*
#include <stdio.h>
static void SayHello(const char* s) {
puts(s);
}
*/
import "C"
func main() {
C.SayHello(C.CString("Hello, World\n"))
}
震撼我妈一整年
2022年8月17日 13:37:53更新
基本不在windows下做开发了,本文我用不到了,留底吧,放到golang专栏。
最后更新于2022年8月17日 13:37:48
项目中用到了一些用到C库的库,比如sqlite,或者是直接import "C",都会用到Golang自带的CGO这个工具,这个工具大体来说就是会调用C库到Golang中。但是在windows环境下不存在C/C++的编译器和库,于是就会报错:exec: “gcc”: executable file not found in %PATH%
MinGW就是一个为Windows准备的C/C++库,GCC是C/C++的编译器,两者合体就能在windows下编译C/C++(这段话我抄的,应该是对的吧)。
MinGW-w64 - for 32 and 64 bit Windows MinGW的代码被托管在sourceforge,很遗憾到目前为止,最新的9.0.0版本下下来还是源码,需要进一步编译。
WinLibs standalone build of GCC and MinGW-w64 for Windows 不过,这里可以下载到编译好的9.0.0版本,解压后直接添加bin文件夹到PATH环境变量即可。
用上了,有个疑问:谁能告诉我调用C的函数怎么反射嘛,没有联想太难受了。
附上一段CGO的hello world代码:
// hello.go
package main
/*
#include <stdio.h>
static void SayHello(const char* s) {
puts(s);
}
*/
import "C"
func main() {
C.SayHello(C.CString("Hello, World\n"))
}
震撼我妈一整年
2022年8月17日 13:37:53更新
基本不在windows下做开发了,本文我用不到了,留底吧,放到golang专栏。
版权声明:本文标题:Windows系统下Golang 安装MinGW来使用CGO(截至2021年8月12日的最新版) 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://it.en369.cn/jiaocheng/1764019048a2979898.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。


发表评论