win8.1下golang+sdl2.0环境搭建

drakefang · · 6550 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

  • sdl2.0的golang绑定我是使用的这个,但是它的官方介绍里面只有linux以及OSX系统的说明,没有windows的,在我的mbp上弄好以后就考虑在win下也搭建一个开发环境,这样就能比较方便的跨平台了。
  • 具体步骤如下:
  1. 配置go环境,可以参考官方文档或者这里
  2. go get上面提到的库,但是反复提示如下错误:

    cc1.exe: sorry, unimplemented: 64-bit mode not compiled in

    后来发现只要用到了cgo就会报这个错误,因为我下载的是go 1.3.2 64位版本,但是本地的gcc是32位的。折腾了好久没解决,一直没能下载到64位的mingw,官方下载器每次都是下载一半的时候报错,即使挂上代理也一样,后来在sf.net上找到一位好心人做的离线下载包,然后将gcc加入path环境变量,才算能使用cgo了。
  3. 到此再build go-sdl的话,会提示找不到SDL2/SDL.h文件,这个问题就更加折腾了,
    google了好久就没人给出具体解决方案,就没提cgo编译的时候,对应的c文件需要放在什么目录下面。也许太简单不屑于提起吧,可是对于新手来说却是比较麻烦的事情。有人说自己看源码都能解决,确实是这个道理,但是请搞清楚首要目的:要学习使用golang来开发sdl程序。
  4. 开始我是尝试将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


有疑问加站长微信联系(非本文作者)

本文来自:博客园

感谢作者:drakefang

查看原文:win8.1下golang+sdl2.0环境搭建

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

6550 次点击  
加入收藏 微博
1 回复  |  直到 2000-01-01 00:00:00
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传