让linux SDL2程序在没有安装SDL2的计算机上运行
Getting a linux SDL2 program to run on a computer that does not have SDL2 installed?
我最近开发了一款小型SDL2游戏。游戏在我的电脑上运行良好,因为我安装了SDL、SDL_image、SDL_mixer和SDL_ttf。然而,每个下载游戏的人都没有安装SDL2和扩展,所以他们无法运行应用程序。如何使应用程序对没有安装SDL2的人可用?
您可以将-rpath
选项传递给ld来指定动态库的搜索目录。
使用-rpath .
(-Wl,-rpath .
从GCC传递)将启用从可执行目录加载库。只要把适当的.so
文件放在那里,它们就会被找到。
你可以静态地链接你的库,这样就不需要安装SDL了。
一种方法:
g++ -o program [sources.cpp] -Wl,-Bstatic -lSDL2 -lSDL2_image
-lSDL2_mixer -lSDL2_ttf -Wl,-Bdynamic [dynamically linked libs]
注意:如果你使用SDL2,你必须使用SDL2构建的外围库,否则你会冒各种错误的风险。
相关文章:
- 为什么使用 P/Invoke 调用 dll 时,某些计算机中的 LoadLibrary 失败?
- EvtExportLogneneneba API正在将远程计算机的事件日志保存到远程PC本身.如何将其保存到主机
- 如何创建事件驱动的 SDL2 应用程序
- 使用 SDL2 和SDL_image C++加载图像
- 为什么我能够为阵列分配比计算机实际拥有的内存更多的内存
- 将 SDL2 与 CMake 链接起来
- 我可以使用任何好的逻辑来阻止计算机将 O 放在井字游戏中的现有 X 上
- SDL2 透明背景
- 如何在使用 SDL2 的 Eclipse 中构建 c++ 程序
- C++ 计算机猜测用户数量在 7 次猜测以内
- C++为什么我的编译器成功了,但我的计算机给出了调试错误?
- 不带轮询的 SDL2 事件回调
- C++ SDL2:如何将矩形渲染到多个视口中
- SDL2 调整窗口大小后如何缩放鼠标坐标?
- SDL2 二维纹理分配/池化
- 在 c++ 中连接字符串和整数,以便在 C++ 11 不支持计算机的情况下读取多个文件
- 如何使用 sdl2 快速绘制像素网格?
- 看不到文件'SDL2.lib'
- 我的 SDL2 程序需要哪些二进制文件,以便它在另一台未安装 SDL2 的计算机中工作
- SDL2 无法正确绘制矩形