Я пытаюсь запустить программу, которая вручную использует FreeType. Я не должен компилировать FreeType в библиотеку, а использовать исходный код напрямую. На данный момент я могу скомпилировать свой код без ошибок. Однако, когда я запускаю свою программу в Ubuntu, она дает ошибку сегментации. Я считаю, что проблема связана со структурой модуля. Я использую FreeType для преобразования ttf в растровое изображение, поэтому я включил модули tt, sfnt и psnames. Однако, я думаю, что-то не так с их инициализацией.
Ручная интеграция FreeType
Ответы (1)
Почему вы избегаете предоставляемых Ubuntu пакетов libfreetype6 и libfreetype6-dev?
Я мог бы понять, что вашей целью может быть внесение изменений в libfreetype, и, таким образом, у вас есть простой способ внести необходимые изменения, не затрагивая остальную часть системы, но вы всегда будете хотеть использовать FreeType в качестве библиотеки. (Конечно, вы можете статически связать его, но по моему опыту, статическое связывание обычно добавляет проблем, а не устраняет их.)
Таким образом, вы можете установить свою собственную локальную копию FreeType в /usr/local/lib/ или ~/local/lib/ (используйте ./configure --prefix=/usr/local
или --prefix=~/local/
).
Затем при компиляции вашей программы вы должны использовать gcc -I ~/local/include -L ~/local/lib ...
ldd
в полученный двоичный файл и сообщение об ошибке, которое вы получаете при попытке запустить его.
- person sarnold; 05.07.2010