我得到了Allegro开发库,编写并编译了一个简单的应用程序,然后在我的计算机上运行它,并且运行良好。我有一个 friend 对其进行了测试,但是双击时它什么也没做。我认为问题在于他没有安装Allegro库,因此该程序无法正常工作。是使他手动安装库和依赖项的唯一方法,还是有某种方法将必要的库与应用程序打包在一起?
编辑:对不起,我的意思是说我正在使用Allegro 5。
最佳答案
我假设您正在使用Allegro 4,因为您正在使用Ubuntu软件包。如果是这样,您可以链接到静态liballeg.a库。但是,仍然存在其他依赖项。
在可执行文件上运行ldd将显示需要哪些依赖项。如果您的 friend 运行ldd,它将告诉他缺少哪些依赖项。
编辑:由于您使用的是Allegro 5,因此需要编译静态版本。从新的构建目录:
cmake -DSHARED=off ..
make
sudo make install
然后在构建时:
gcc game.c -o game $(pkg-config --libs --static allegro-static-5.0)
同样,还会有其他依赖项,但是您的 friend 可以只使用
apt-get
安装它们。关于c++ - 如何将Allegro库与Ubuntu Allegro应用程序捆绑在一起?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7168355/