Получение Allegro5 для сборки на Win7 с MinGW (не может скомпилировать TTF) - PullRequest
0 голосов
/ 23 февраля 2012

Система и окружающая среда

  • Windows 7 (64 бита)
  • MinGW 4.6.1
  • Eclipse Indigo (на самом деле не используется в процессе сборки)
  • Windows PowerShell (Запуск от имени администратора)

Краткое описание проблемы

Я пытаюсь собрать Allegro5 в вышеуказанной среде.Первоначально это работало, и я был в состоянии связать с allegro и allegro-image, и не было никаких проблем.Однако, когда я попытался связаться с allegro-ttf, он не был обнаружен.

Я вернулся к своим журналам, и freetype не был найден, поэтому поддержка ttf была прекращена;упс!Я получил freetype и начал перестраивать 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 или нет.Я удостоверился, что получил файлы dev, но компиляция не удалась.Затем я попытался создать freetype2 самостоятельно, но это ничего не изменило, та же проблема.

Я не уверен, в чем проблема.0x5 это нарушение прав доступа?Может быть, это связано с тем, что в «Program Files» есть пробел, а в ошибке мы видим «C: / Program»?Я не предоставляю пути напрямую, они находятся в моих переменных пути.Я попытался обернуть мои пути в кавычки, но это заставило их вообще не работать.Может быть, есть другой метод?

Я здесь рыба из воды.Буду признателен за любую помощь.Пожалуйста, прокомментируйте, если вам требуется более подробная информация о моей настройке!

Спасибо за ваше время <3 </p>

1 Ответ

1 голос
/ 24 февраля 2012

Если у вас есть c: \ allegro \ build (откуда вы запускаете cmake), я бы создал c: \ allegro \ build \ deps \ lib c: \ allegro \ build \ deps \ include и поместил файлы ( например, freetype и т. д.) там. Allegro автоматически просканирует эти места.

...