Аллегро 5 Visual Studio 2015?

Я просматривал некоторое время, и многие источники рекомендуют использовать Allegro в качестве первой 2D-библиотеки для C++; однако в наши дни я не нашел обучения по применению библиотек Allegro 5 к Visual Studio 15.

Возможно ли это или мне нужно перейти на Visual Studio 2010?


person Ulivax    schedule 06.11.2015    source источник


Ответы (2)


Редактировать по состоянию на 2016 г. В настоящее время предпочтительным методом установки Allegro 5 (на данный момент это версия 5.2.1) в Visual Studio является использование пакетов NuGet. Ссылка находится здесь. Это самый простой и быстрый способ получить Allegro, и его должен использовать каждый. Протестировано в Visual Studio Community 2015.


Судя по всему, руководства в сети устарели или забывают, что на официальном сайте есть свежие и современные двоичные файлы, готовые к загрузке. . Итак, как настроить Allegro:

Предположения

Прежде всего, я буду использовать ветку Unstable, 5.1, так как именно в ней есть новые двоичные файлы. И во-вторых, я буду использовать Visual Studio 2013, но для Visual Studio 2015 он должен быть точно таким же (шаг 1 ниже имеет единственное отличие в процессе, с которым вы можете столкнуться).

Шаг 1

Мы загрузим Allegro 5 напрямую из репозитория Gna!. . Здесь вы выбираете файл в зависимости от того, что у вас есть и что вы хотите сделать.

В этом каталоге 4 файла, в моем случае я скачаю allegro-msvc2013-x86-5.1.12.zip, а вы скачаете allegro-msvc2015-x86-5.1.12.zip< /сильный>. Выберите версию x64, только если вы знаете, что делаете.

Шаг 2

Когда загрузка завершится, извлеките содержимое в легкодоступное место, которое вы не будете перемещать, например в корневой каталог вашего жесткого диска или внутри Документов. Пойду с рутом, обычно диск C:. После извлечения у вас должна быть папка в C:\allegro\ со следующим содержимым:

allegro\
 |-bin\
 |-include\
 |-lib\

Важно помнить, куда вы извлекли файлы, так как правильная настройка среды зависит от ее способности найти этот путь.

Шаг 3

Пример диалогового окна свойств в Visual Studio 2013

Здесь мы сообщаем Visual Studio, как использовать Allegro. Откройте Visual Studio и создайте новый проект C++/откройте проект, в котором вы хотите использовать Allegro. Открыв проект, щелкните правой кнопкой мыши его имя в обозревателе решений и откройте Свойства, затем:

  1. Вверху, где указано что-то вроде Конфигурация: активна (отладка), выберите Все конфигурации.
  2. В меню слева выберите C/C++ -> Общие. На этой странице конфигурации выберите Дополнительные каталоги включения и отредактируйте его, указав в текстовом поле containsC:\allegro\include\.
  3. В меню слева выберите Linker -> General. На этой странице конфигурации выберите Дополнительные каталоги библиотек и отредактируйте его, указав C:\allegro\lib\ в текстовом поле.
  4. Нажмите «Применить» внизу, но пока не закрывайте окно.
  5. Вернувшись наверх, выберите конфигурацию отладки.
  6. В меню слева выберите Linker -> Input. На этой странице конфигурации выберите Дополнительные зависимости и отредактируйте его, указав allegro_monolith-debug.lib в текстовом поле.
  7. (Необязательно) В меню слева выберите Linker -> System. На этой странице конфигурации выберите Подсистема и измените его на Консоль в раскрывающемся списке. Это даст вам рабочее окно терминала в режиме отладки, в котором вы можете написать ... err... отладочный материал;)
  8. Нажмите «Применить» внизу, но пока не закрывайте окно.
  9. Вернувшись вверху, выберите конфигурацию выпуска.
  10. В меню слева выберите Linker -> Input. На этой странице конфигурации выберите Дополнительные зависимости и отредактируйте его, указав allegro_monolith.lib в текстовом поле.
  11. (Необязательно) В меню слева выберите Linker -> System. На этой странице конфигурации выберите Подсистема и измените его на Windows в раскрывающемся списке. Это предотвратит появление окна терминала в версиях Release вашей программы.
  12. Нажмите «Применить», затем «ОК». Это закроет страницы свойств проекта и подготовит его для Allegro.

Шаг 4

Это та часть, где мы проверяем, все ли работает... (или нет, см. следующий шаг после ошибки)

Создайте файл *.cpp или используйте тот, где находится ваша основная функция, и измените его на эту небольшую тестовую программу: (Я отдаю на нее все свои права и размещаю в открытом доступе)

#include "allegro5\allegro5.h"
#include <iostream>

int main(int argc, char** argv)
{
    al_init();

    ALLEGRO_DISPLAY *display = nullptr;
    al_set_app_name("Hello World from Allegro 5.1!");
    display = al_create_display(640, 480);
    if (display == nullptr)
    {
        std::cerr << "Well, something is not working..." << std::endl;
        al_rest(5.0);
        return EXIT_FAILURE;
    }

    al_clear_to_color(al_map_rgb(255, 255, 255));
    al_flip_display();
    al_rest(5.0);
    return 0;
}

Если после компиляции и запуска вы получаете пустое окно, которое закрывается через 5 секунд, то Allegro готово! Если нет, опубликуйте свое сообщение об ошибке, и я посмотрю, что произошло.

Шаг 5

Где мы решаем отсутствующую ошибку DLL при выполнении...

Таким образом, программа должна быть скомпилирована правильно, и теперь Visual Studio попытается ее запустить. При запуске может появиться следующее:

Ошибка: запуск программы невозможен, так как в системе отсутствует библиотека DLL.

Решение состоит в том, чтобы скопировать в папку Debug в корне вашего проекта файл allegro_monolith-debug-5.1.dll, чтобы он находился рядом с файлом .exe вашей программы. Точно так же в папке Release вы должны скопировать allegro_monolith-5.1.dll рядом с исполняемым файлом этой папки. Оба этих файла должны находиться в каталоге allegro\bin\ загруженного архива. Имейте в виду, что вам, вероятно, понадобится другая dll из тех, что я сказал, но она также должна быть включена в файл, который вы скачали с Gna!.

Примечание. Пакет, на который я ссылался, предоставляет только базовую библиотеку Allegro 5, а не ее зависимости. Предположительно, они включены в бинарный файл релиза, но в отладочной версии вам может потребоваться связать их вручную. Они расположены здесь. Выберите пакет 1.2.0 для последней версии allegro 5.1.12.

person rlam12    schedule 08.11.2015
comment
Большое спасибо, из предыдущих попыток, я думаю, все они не распознали файлы библиотеки: c Я был близок к тому, чтобы начать использовать SDL для его 2D-библиотек, но большинство людей рекомендуют Allegro для вашего первого языка. Еще раз большое спасибо, ваш ответ принят ^_^ - person Ulivax; 10.11.2015

Возможен немного другой подход, начиная с вышеприведенного поста Шаг 3. В разделе «Все конфигурации» выполните следующие действия:

  1. На левой панели Configuration Manager в разделе «Свойства конфигурации» выберите «Отладка», на правой панели выберите «Среда» и введите: PATH=d:\Programms\Allegro_2015\bin , где «d:\Programms\Allegro_2015\» ваш путь к папке библиотек Allegro.
  2. На левой панели выберите «Каталоги VC++», а на правой панели выберите «Включить каталоги», затем добавьте тот же путь с \include в конце в текстовом поле «Изменить...»: d:\Programms\Allegro_2015\include.
  3. Затем на правой панели выберите «Каталоги библиотек» и добавьте: d:\Programms\Allegro_2015\lib.
  4. Следуйте шагам из поста выше.
person galaxyman    schedule 20.02.2016