Я сделал аллегро простую игру. Но когда я открываю файл * .exe на другом компьютере, он говорит, что многие файлы .dll отсутствуют. Как заставить мою игру работать на других компьютерах без установленной библиотеки Visual Studio и Allegro 5?
Более длинная версия моего комментария:
Когда вы создали свое приложение, оно ссылается на определенные библиотеки DLL, которые существуют на вашем компьютере. Когда вы распространяете свою игру, вам нужно либо архивировать DLL-файлы вместе с вашим .exe, либо упаковать их с помощью создателей пакетов и отправить их.
Лучший способ узнать, от каких DLL зависит ваш exe-файл, — использовать такой инструмент, как Зависимость Уокер. Вам не нужно копировать абсолютно все библиотеки DLL, от которых зависит ваш EXE-файл. Только те, которые вы видите, находятся в нестандартных путях, таких как не в C: \ Windows \ System32. Как говорится, вы может понадобиться скопируйте некоторые из C: \ Windows \ System32. Вы должны будете выяснить это самостоятельно.
Чтобы упаковать их все в качестве установки, вы можете использовать создателей пакетов, таких как InnoSetup или же NSIS. В противном случае создайте сценарий, который архивирует все это для вас. AFAIK, нет простого способа получить все требуемые DLL, которые отсутствуют в системе других людей. Вам нужно будет найти их методом проб и ошибок. Это боль, к сожалению.
Если вы загрузили предварительно собранные двоичные файлы, создайте ссылку на статическую монолитную сборку Altro mt. Вам нужно будет настроить параметры компилятора в соответствии с (/ MT) и добавить ALLEGRO_STATICLINK
к вашему списку определений препроцессора.
Если вы это сделаете, то вам нужно только распространить свой исполняемый файл и ваши ресурсы (изображения, звуки и т. Д.).
Обратите внимание, что у вас должно быть как минимум две конфигурации: Debug & Релиз. При работе с вашим приложением вы должны использовать конфигурацию Debug (связывание с обычной библиотекой Allegro для отладки). При распространении вашего приложения вы должны использовать конфигурацию выпуска.