2011-08-23 36 views
3

我得到了Allegro开发库,编写并编译了一个简单的应用程序,然后在我的电脑上运行它,它运行良好。我有一个朋友测试它,但双击时没有做任何事情。我认为问题在于他没有安装Allegro库,所以程序不起作用。是否只有这样才能让他手动安装库和依赖项,还是有一些方法可以将必要的库打包到应用程序中?如何将Allegro库与Ubuntu Allegro应用程序捆绑在一起?

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

回答

1

说,我假定您使用的快板4,因为你是使用Ubuntu的软件包工作。如果是这样,您可以链接到静态liballeg.a库。但是,仍然存在其他依赖关系。

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

编辑:由于您使用的是Allegro 5,因此您需要编译静态版本。从一个新的build目录:

cmake -DSHARED=off .. 
make 
sudo make install 

然后,当建筑:

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

再次,还会有其他的依赖,但你的朋友可能只是apt-get安装它们。

+0

我忘了在原帖中提到这一点,但我正在使用allegro 5。 – awesomeguy