Как я могу обновить fontconfig до более новой версии в Red Hat 5.3? - PullRequest
3 голосов
/ 19 марта 2010

Я хочу обновить fontconfig до более новой версии, но похоже, что ОС все еще находит старый fontconfig, и мне нужна более новая версия для сборки qt.Как сделать, чтобы Red Hat 5.3 увидела более новую версию?Я не знаю, помогает ли это, но когда я выполнил поиск fontconfig, я нашел некоторые файлы в папке с именем cache.Когда я делаю обновление yum, оно говорит мне, что все обновлено, но эта версия слишком старая и отсутствует FcFreeTypeQueryFace.Просто отправьте мне комментарий, если это не тот сайт, и я его поменяю.

Ответы [ 2 ]

6 голосов
/ 26 марта 2010

Если вы получили эту ошибку в RHEL или CentOS 5.x:

/home/esutton/qtsdk-2010.02/qt/lib/libQtGui.so: undefined reference to `FcFreeTypeQueryFace'
collect2: ld returned 1 exit status

Очевидно, libQtGui.so не может использовать libfontconfig `FcFreeTypeQueryFace 'метод. До версии 2.4.2 он либо не существовал, либо, возможно, подпись изменялась в версии 2.4.2. Не уверен, какой, но обновленная версия должна быть установлена ​​для: '' '/Usr/lib/libfontconfig.so.1'''

Как исправить

Загрузите исходные коды и сконфигурируйте их для установки там, где они ожидают найти:

cd /usr/src
wget http://fontconfig.org/release/fontconfig-2.4.2.tar.gz
tar -zxf fontconfig-2.4.2.tar.gz
cd fontconfig-2.4.2
./configure -prefix=/usr
make
make install <- Run as root or use sudo

После этого вы не должны добавить местоположение библиотеки fontconfig в файл .pro вашего проекта Qt.

LIBS += -L/opt/fontconfig-2.4.2/lib

Это сработало для меня на RHEL 5.3. Надеюсь, это поможет!

1020 * Эд *

1 голос
/ 19 марта 2010

Вам нужно либо

  • найдите rpm, возможно, не относящийся к Red Hat, с более свежей сборкой fontconfig и установите его. Попробуйте, например, rpm.pbone.net .

или

  • альтернативно, получите исходный код, соберите и установите его самостоятельно. Если в вашей системе есть программное обеспечение, которое зависит от существующего значения rm fontconfig, вы не сможете удалить версию, предоставленную yum. Если это так, то не беспокойтесь об установочной части процесса сборки, просто соберите ее и оставьте ее там, где она есть. Затем вам нужно убедиться, что путь к вашей версии, созданной локально, используется при компиляции Qt. Я не говорю, что это сработает, но я бы хотел сделать это сам, если бы не было опции rpm.
...