我获得了Allegro开发库,编写并编译了一个简单的应用程序,并在我的计算机上运行它,它工作正常。我有一个朋友测试它,但双击时它没有做任何事情。我认为问题是他没有安装Allegro库,所以程序不起作用。是否能让他手动安装库和依赖项是唯一的方法,还是有办法用应用程序打包必要的库?
编辑:对不起,我的意思是说我正在使用Allegro 5。答案 0 :(得分:1)
我假设您正在使用Allegro 4,因为您正在使用Ubuntu软件包。如果是这样,您可以链接静态liballeg.a库。但是,还有其他依赖项。
在可执行文件上运行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
安装它们。