Как связать библиотеку Allegro с приложением Ubuntu Allegro? - PullRequest
3 голосов
/ 24 августа 2011

Я получил библиотеки Allegro dev, написал и скомпилировал простое приложение, запустил его на своем компьютере, и оно работало нормально. У меня был друг, проверил это, но он ничего не сделал, когда дважды щелкнул. Думаю, проблема в том, что у него не установлена ​​библиотека Allegro, поэтому программа не работает. Это единственный способ заставить его вручную установить библиотеку и зависимости, или есть какой-то способ упаковать необходимые библиотеки с приложением?

РЕДАКТИРОВАТЬ: Извините, я хотел сказать, что я использовал Allegro 5.

1 Ответ

1 голос
/ 24 августа 2011

Я предполагаю, что вы используете 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.

...