我已经为我的Uni项目创建了一个游戏,说游戏运行正常,但我无法在未安装SDL2的大学计算机上运行它并且无法安装SDL2。
有没有办法在编译时打包SDL2文件,以便我可以在任何Ubuntu系统上运行它?
答案 0 :(得分:1)
以上评论是正确的。你应该使用Linux工具' chrpath'或者使用gcc的rpath标志,以便在游戏二进制文件中引用您自己打包的SDL库。
作为一个起点,我建议你看一下bitbucket上GPL游戏Rock Dodger CE的Makefile。它做你想要的。它使用-rpath编译器标志引用SDL2库。
此外,该游戏还为3个Linux架构(i686,Amd64,ARMv7l)提供了SDL2库。 (查看适用于Linux的' multiarch'软件包的下载部分。如果符合您的要求并且您不想重建所有内容,可以使用这些编译库自己。
我同意你的观点,即还没有关于如何创建" 通用"的全面文档。 Linux上的SDL2游戏包。或者我还没有找到它;)
为许多Linux发行版构建兼容的二进制文件需要先了解' Linux Standard Base 5.0'。工具 Linux App Checker (来自LSB)旨在帮助您实现二进制文件的最大可移植性。
根据我的经验,我认为CentOS 5是迄今为止最合适的长期支持'用于构建通用二进制文件的Linux发行版。