如何将Allegro库与Ubuntu Allegro应用程序捆绑在一起?

How do I bundle the Allegro library with a Ubuntu Allegro application?

本文关键字:Allegro 在一起 应用程序 Ubuntu 库与      更新时间:2023-10-16

我得到了Allegro开发库,编写并编译了一个简单的应用程序,并在我的计算机上运行它,它运行得很好。我让一个朋友测试了一下,但双击它什么也没做。我认为问题是他没有安装Allegro库,所以程序不能工作。是否只有手动安装库和依赖项才能使其工作,或者是否有某种方法将必要的库打包到应用程序中?

编辑:对不起,我的意思是说我用的是快板5。

我假设您使用的是Allegro 4,因为您正在使用Ubuntu软件包。如果是这样,您可以链接到静态libleg。一个图书馆。但是,仍然有额外的依赖项。

在可执行文件上运行ldd将显示需要哪些依赖项。如果你的朋友运行ldd,它会告诉他缺少哪些依赖项。

编辑:因为你正在使用Allegro 5,你需要编译静态版本。从一个新的构建目录:

cmake -DSHARED=off ..
make
sudo make install

然后在构建时:

gcc game.c -o game $(pkg-config --libs --static allegro-static-5.0)

同样,还会有其他依赖项,但你的朋友可以将它们安装在apt-get中。