- sdl2.0的golang绑定我是使用的这个,但是它的官方介绍里面只有linux以及OSX系统的说明,没有windows的,在我的mbp上弄好以后就考虑在win下也搭建一个开发环境,这样就能比较方便的跨平台了。
- 具体步骤如下:
- 配置go环境,可以参考官方文档或者这里。
go get上面提到的库,但是反复提示如下错误:
cc1.exe: sorry, unimplemented: 64-bit mode not compiled in
- 到此再build go-sdl的话,会提示找不到SDL2/SDL.h文件,这个问题就更加折腾了,
google了好久就没人给出具体解决方案,就没提cgo编译的时候,对应的c文件需要放在什么目录下面。也许太简单不屑于提起吧,可是对于新手来说却是比较麻烦的事情。有人说自己看源码都能解决,确实是这个道理,但是请搞清楚首要目的:要学习使用golang来开发sdl程序。 开始我是尝试将sdl的头文件放到github.com/veandco/go-sdl2/sdl目录下,
因为该目录下本来就有一些c文件,因此考虑cgo会搜索当前目录,结果失败了,它只能搜索当前目录,一旦放到子目录就不行。接下来尝试使用绝对路径,仍然失败,不清楚为嘛。再下来想到cgo是通过gcc来编译c代码,因此将sdl官方下载的binary包(mingw版本)解压放入gcc目录(sdl官方的mingw包中应该包含了bin,include,lib,share这几个目录,直接将它们放到gcc根目录下,与同名目录覆盖即可)
然后go build,一切ok
至此,整个环境应该搞定了,let' go