Система и среда
- Windows 7 (64-разрядная версия)
- МинГВ 4.6.1
- Eclipse Indigo (на самом деле не используется в процессе сборки)
- Windows PowerShell (запуск от имени администратора)
Краткое изложение проблемы
Я пытаюсь собрать Allegro5 в приведенной выше среде. Сначала это работало, и я смог связать аллегро и аллегро-изображение, и проблем не возникло. Однако, когда я попытался связать с allegro-ttf, он не был обнаружен.
Я вернулся к своим журналам, и freetype не был найден, поэтому поддержка ttf была прекращена; ой! Я получил фритайп и начал переделывать Allegro5.
Я не буду копировать полные сообщения сборки, но в новый каталог сборки:
cmake .. -G "MinGW Makefiles"
...stuff
Found Freetype: C:/Program Files (x86)/GnuWin32/lib/libfreetype.dll.a
...stuff
Хорошо смотритесь. Давайте скомпилируем!
C:\Program Files\MinGW\allegro\build> mingw32-make -j4
...stuff
Scanning dependencies of target allegro_acodec
[ 24%] Building C object addons/acodec/CMakeFiles/allegro_acodec.dir/acodec.c.obj
[ 24%] Building C object addons/acodec/CMakeFiles/allegro_acodec.dir/wav.c.obj
Linking C shared library ..\..\lib\allegro_acodec-5.0.dll
Creating library file: ..\..\lib\liballegro_acodec.dll.a
[ 24%] Built target allegro_acodec
Scanning dependencies of target allegro_ttf
"C:/Program: Interrupt/Exception caught (code = 0xc0000005, addr = 0x004132f6)
mingw32-make[1]: *** [addons/ttf/CMakeFiles/allegro_ttf.dir/all] Error 255
mingw32-make: *** [all] Error 2
Другие детали
Я мог бы просто облегчить себе жизнь и получить готовые двоичные файлы, но это в основном образовательный процесс. Тот, который поставил меня в тупик на смущающее количество времени.
Я установил freetype2, который теперь обнаружен. Таким образом, ttf включается в процесс сборки. Я не уверен, виноват ли freetype2 или нет. Я позаботился о том, чтобы получить файлы разработки, но компиляция не удалась. Затем я попытался собрать freetype2 самостоятельно, но это ничего не изменило, та же проблема.
Я не уверен, в чем проблема. 0x5 - это нарушение прав доступа, я полагаю? Может быть, это связано с тем, что в "Program Files" есть пробел, а в ошибке мы видим "C:/Program"? Я не указываю пути напрямую, они находятся в моих переменных пути. Я пытался заключить свои пути в кавычки, но из-за этого они вообще не работают. Может есть другой метод?
Я здесь как рыба в воде. Буду признателен за любую помощь. Пожалуйста, прокомментируйте, если вам нужна дополнительная информация о моей настройке!
Спасибо за ваше время ‹3