The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Включаем Bytecode Interpreter в пакете freetype в некоторых Linux дистрибутивах (freetype font x11 linux packet rpm)


<< Предыдущая ИНДЕКС Исправить src / Печать Следующая >>
Ключевые слова: freetype, font, x11, linux, packet, rpm,  (найти похожие документы)
From: Alexey Dmitriev <dalex@mail.ru. > Date: Sun, 16 Feb 2008 17:02:14 +0000 (UTC) Subject: Включаем Bytecode Interpreter в пакете freetype в некоторых Linux дистрибутивах Оригинал: http://linuxportal.ru/entry.php/2275_0_3_0_C/ Аннотация Создаем пакет freetype с включенным Bytecode Interpreter в дистрибутивах Fedora Core 5 и Slackware 10.2. Авторы: Logvinon, San АНДРЕЕВ Введение Известно, что из-за лиценцизионных ограничений пакет freetype поставляется без использования Bytecode Interpreter, также считается, что его наличие улучшает рендеринг TrueType шрифтов (символы отрисовываются аккуратнее, без "мазни"). Как его включить при сборке из исходников описано много где, поэтому озаботимся подготовкой пакета. 1. Подготовка Если у Вас не готово окружение для сборки пакетов, то с этого надо начать. Хотя весь процесс и описан в Fedora Core 5 Release Notes, кратко его повторю: su -c 'yum install fedora-rpmdevtools' fedora-buildrpmtree su -c 'yum install yum-utils' В домашнем каталоге будет создано дерево ${HOME}/rpmbuild/ со всеми необходимыми для rpmbuild подкаталогами. В дальнейшем данная структура Вам пригодится для пересборки пакетов, да и для сборки kernel. Для Slackware необходимо взять исходный код пакета и скрипта его сборки либо с дистрибутивного CD (source/x/x11/[freetype-2.1.9.tar.bz2, freetype2.build]), либо с одного из зеркал Slackware (напр. с slackware.perespim.ru/pub/slackware-10.2 :). 2. Теперь вперед к нашей цели. Загружаем пакет с исходниками freetype: cd ${HOME}/rpmbuild/SRPMS yumdownloader --source --enablerepo=core-source freetype Инсталируем исходники: rpm -Uhv freetype-2.1.10-5.2.1.src.rpm Эта команда запишет содержимое RPM пакета в ${HOME}/rpmbuild/SOURCES и ${HOME}/rpmbuild/SPECS. Далее, основная смысловая работа, правим SPEC-файл: cd ../SPECS vi freetype.spec В начале файла находим строку: % define without_bytecode_interpreter 1 Пробела,после символа '%' - нет! и заменяем 1 на 0, т.е. строка должна выглядеть так: % define without_bytecode_interpreter 0 Аналогично, пробела после символа '%' быть не должно. Всё! Собираем пакет: QA_RPATHS=$[ 0x0010 ] rpmbuild -bb --target $(uname -m) freetype.spec Результат нашего труда найдём в: cd ../RPMS/$(uname -m) Для Slackware последовательность иная. Кладем куда-нибудь архив с исходниками и скриптом сборки, напр. в моем случае это /home/san/src/freetype. Переходим в этот каталог и распаковываем архив: $ tar -xjf freetype-2.1.9.tar.bz2 Теперь надо включить заветный Bytecode Interpreter, для чего надо подправить файл include/freetype/config/ftoption.h в строке 439, которую надо раскомментировать и привести к такому виду: #define TT_CONFIG_OPTION_BYTECODE_INTERPRETER После этого надо немного "подлечить" скрипт сборки, потому как он нашу распаковку архива благополучно игнорирует. В нем надо закомментировать строки 42-44, должно получиться что-то вроде такого: #cd /tmp #rm -rf freetype-$VERSION #tar xjvf $CWD/freetype-$VERSION.tar.bz2 После этого надо дать ему права на выполнение - $ chmod +x freetype2.build и запустить на выполнение от имени root (у себя я это делаю через sudo): $ sudo freetype2.build Скрипт сделает все сам, только без готового пакета на выходе. :) Если вам нужен еще и пакет, то надо зайти в распакованный каталог исходников и воспользоваться утилитой checkinstall (инсталлятором при установке системы она обычно не ставится, ее надо искать в extra и устанавливать самостоятельно). Использованные источники: 1. Fedora Core 5 Release Notes

<< Предыдущая ИНДЕКС Исправить src / Печать Следующая >>

 Добавить комментарий
Имя:
E-Mail:
Заголовок:
Текст:




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру