C++ 如何将Allegro库与Ubuntu Allegro应用程序捆绑?
我得到了Allegro开发库,编写并编译了一个简单的应用程序,并在我的计算机上运行,它运行得很好。我让一个朋友测试了它,但双击时它什么也没做。我认为问题在于他没有安装Allegro库,所以程序无法运行。对他来说,手动安装库和依赖项是唯一可行的方法,还是有办法将必要的库打包到应用程序中C++ 如何将Allegro库与Ubuntu Allegro应用程序捆绑?,c++,ubuntu,allegro,allegro5,C++,Ubuntu,Allegro,Allegro5,我得到了Allegro开发库,编写并编译了一个简单的应用程序,并在我的计算机上运行,它运行得很好。我让一个朋友测试了它,但双击时它什么也没做。我认为问题在于他没有安装Allegro库,所以程序无法运行。对他来说,手动安装库和依赖项是唯一可行的方法,还是有办法将必要的库打包到应用程序中 编辑:对不起,我的意思是说我使用的是Allegro 5。我假设您使用的是Allegro 4,因为您使用的是Ubuntu软件包。如果是这样,您可以链接静态libalge.a库。但是,仍然存在其他依赖项 在可执行文件上
编辑:对不起,我的意思是说我使用的是Allegro 5。我假设您使用的是Allegro 4,因为您使用的是Ubuntu软件包。如果是这样,您可以链接静态libalge.a库。但是,仍然存在其他依赖项 在可执行文件上运行ldd将显示需要哪些依赖项。如果您的朋友运行ldd,它将告诉他缺少哪些依赖项 编辑:因为您使用的是Allegro5,所以需要编译静态版本。从新生成目录:
cmake -DSHARED=off ..
make
sudo make install
然后在构建时:
gcc game.c -o game $(pkg-config --libs --static allegro-static-5.0)
同样,还有其他依赖项,但是你的朋友可以用apt-get安装它们,我在原来的帖子中忘了提到这一点,但我使用的是allegro 5。