为了账号安全,请及时绑定邮箱和手机立即绑定

无需模块即可提供软件包 SDL2

无需模块即可提供软件包 SDL2

Go
慕工程0101907 2022-08-09 20:26:09
我正在尝试从 https://github.com/veandco/go-sdl2 导入 sdl2 包。我按照Windows readme.md 上显示的所有步骤进行操作。安装 mingw64 并在 cmd 上执行:go get -v github.com/veandco/go-sdl2/sdl它工作正常,但是当我试图做:go run .\sdl2.go我得到这个错误:sdl2.go:4:2: no required module provides package github.com/veandco/go-sdl2/sdl: working directory is not part of a module在我的另一台计算机中工作完美,但是当我克隆此存储库并将软件包安装到另一台笔记本电脑上时,我遇到了很多问题。为了获得有关该案例的更多信息,我将我的测试源放在这里以获取更多信息:package mainimport (    "github.com/veandco/go-sdl2/sdl"    "fmt")const winWidth, winHeight int = 800, 600type color struct {    r, g, b byte}func setPixel(x, y int, c color, pixels []byte) {    index := (y * winWidth + x) * 4    if index < len(pixels)-4 && index >= 0 {    pixels[index] = c.r    pixels[index+1] = c.g    pixels[index+2] = c.b    }}func main() {    winWidth := 800    winHeight := 600    window,err := sdl.CreateWindow("Testing SDL2", sdl.WINDOWPOS_UNDEFINED, sdl.WINDOWPOS_UNDEFINED,        int32(winWidth) ,int32(winHeight), sdl.WINDOW_SHOWN)    if err != nil {        fmt.Println(err)        return     }    defer window.Destroy()    renderer, err := sdl.CreateRenderer(window, -1, sdl.RENDERER_ACCELERATED)    if err != nil {        fmt.Println(err)        return    }    defer renderer.Destroy()    tex, err  := renderer.CreateTexture(sdl.PIXELFORMAT_ABGR8888, sdl.TEXTUREACCESS_STREAMING, int32(winWidth), int32(winHeight))    if err != nil {        fmt.Println(err)        return    }    defer tex.Destroy()    pixels := make([]byte, winWidth*winHeight*4)    for y := 0; y < winHeight; y++ {        for x := 0; x < winWidth; x++ {            setPixel(x,y, color{byte(x % 255),byte(y % 255), 0}, pixels)        }    }    tex.Update(nil,pixels,winWidth*4)    renderer.Copy(tex,nil,nil)    renderer.Present()    sdl.Delay(2000)} 
查看完整描述

1 回答

?
桃花长相依

TA贡献1860条经验 获得超8个赞

根据Go 1.16博客中的新模块更改

go 命令现在默认在模块感知模式下生成包,即使不存在 go.mod 也是如此。这是朝着在所有项目中使用模块迈出的一大步。

正如博客中建议的那样,将GO111MODULE的值更改为auto可以解决此问题。go env -w GO111MODULE=auto


查看完整回答
反对 回复 2022-08-09
  • 1 回答
  • 0 关注
  • 146 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号