我目前正在测试 Go-SDL2 lib,仅供娱乐。我把二进制文件给了我的一个 friend ,但他的机器上没有安装 SDL。所以我想做的(跳舞)就是分发 4 个 .so 库和二进制文件,这样它就可以在其他 Linux 机器上正常工作。其实很简单,我只需要将 LD_LIBRARY_PATH 设置为指向当前文件夹即可。这是为了测试目的。
问题是,我必须在 导入 go-sdl2 库之前设置此环境变量。现在我只有一个源文件(显然是 main.go)。
我怎样才能做到这一点? (甚至可能吗?)
最佳答案
一个选项是在调用 go-sdl2
之前设置一个脚本来设置 LD_LIBRARY_PATH
环境变量(在同一个脚本中)。
另一个更有趣的选择是使用 Docker image ,根据该图像制作一个 Dockerfile,然后安装 SDL 并进入其中(如 didstopia/sdl2
广告 its Dockerfile ,结合 Golang Dockerfile )。
然后您将拥有一个可重现的标准环境,您无需更改 LD_LIBRARY_PATH
。您可以导出该图像,以便您的 friend 进行试验。
关于go - 有没有办法在 Go 中的任何导入之前设置环境变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30997967/