2

Я попытался скомпилировать Firefox 24 на RHEL 5.9 и попал в ад зависимости.

У меня нет привилегий root, и я скомпилировал несколько зависимостей (glib, cairo и еще много чего) в одном из моих каталогов. Мне не удалось скомпилировать pango (1.20.5) с этой ошибкой, которую мне не удалось устранить: /work/usr/lib/libcairo.so: неопределенная ссылка на `XRenderFindVisualFormat '.

Теперь мой вопрос: возможно ли скомпилировать FF24 на RHEL 5.9 и если да, можете ли вы порекомендовать процедуру, как действовать систематически?

Редактировать:

Я попробовал решение с префиксом gentoo: После установки префикса с bootstrap-prefix.sh в /work /gentoo:

  • Добавлена строка USE="-*" в $EPREFIX/etc/portage/make.conf
  • Добавлена строка PYTHON_TARGETS = "python2_7" в $EPREFIX/etc/portage/make.conf
  • nasm на хосте был слишком стар (NASM версии 0.98.39, скомпилирован 12 июля 2006 г.), поэтому сборка media-libs/libjpeg-turbo-1.3.1 не удалась. emerge nasm это исправили.
  • emerge --autounmask-write '<media-libs/mesa-10.2'
  • emerge --autounmask-write firefox

Чтобы запустить Firefox, я использую скрипт:

#!/bin/bash
PREFIX=/work/gentoo
COMMAND="${PREFIX}/usr/lib/firefox/firefox $1"
env -i HOME=$HOME TERM=$TERM USER=$USER $PREFIX/bin/bash -l -c "export DISPLAY=:0.0 ; ${COMMAND}"

К сожалению, я не могу передать файл в этот скрипт, поэтому Firefox открывает файл автоматически. Плюс - и это более серьезная проблема - прокрутка колесиком мыши глючит, и переключение вкладок нажатием на них не работает. Так что все усилия были напрасны)o:

3 ответа3

0

Можно скомпилировать Firefox на RHEL 5, используя префикс Gentoo. Это небольшая работа (полезен IRC-канал Prefix), но использование правильного менеджера пакетов означает, что все зависимости обрабатываются за вас.

Загрузочный префикс, затем просто установите Firefox с:

$ ~/gentoo/startprefix # wherever your prefix shell script is
$ emerge -a firefox
$ export DISPLAY=:0.0 # Use the existing Xorg installed
$ firefox

Обратите внимание, что Firefox 30 - последняя версия, которая будет работать на RHEL 5. Firefox 31+ зависит от mesa 10.2+. mesa 10.2+ имеет зависимость времени сборки от libudev и udev, которая не может быть построена на префиксе Gentoo.

0
emerge --autounmask-write firefox

должен быть заменен

emerge -p --autounmask-write firefox

Сразу после этого шага в $ EPREFIX/etc/portage/make.conf вы должны заменить

USE="-*"

от

USE="-keyword1 -keyword2 -keyword3 ... -keywordN"

где ключевое слово1 ключевое слово2 ключевое слово3, ... ключевое словоN должно быть заменено различными USE-флагами, показанными с помощью emerge -p --autounmask-write firefox . Если emerge -p --autounmask-write firefox показал

[ebuild   R    ] app-text/recode-3.6_p17-r2  USE="nls (prefix%*) -static-libs" 2,021 kB

Тогда вы могли бы использовать

USE="-nls -static-libs"

Это даст вам что-то с эффектом, точно эквивалентным USE="-*" .

На следующем шаге вы должны попытаться угадать, какие из элементов в USE препятствуют тому, чтобы «прокручиваться колесиком мыши и глючить и переключать вкладки, нажимая на них». Например, если это -nls, то вы должны заменить -nls на +nls (или ничем) в переменной USE.

Вы можете найти http://www.gentoo.org/dyn/use-index.xml, чтобы отслеживать связанные с мышью ключевые слова USE.

После этого выполните шаги ниже, чтобы скомпилировать совместимый с мышью Firefox:

emerge --autounmask-write firefox
mv $EPREFIX/etc/portage/.*package.use $EPREFIX/etc/portage/package.use
emerge firefox

Примечание. Я думаю, что для создания Firefox достаточно переменной USE, сокращенной до нескольких ключевых слов. Пожалуйста, сообщите об этом здесь и в IRC, если вам удастся найти его.

-1

Это предполагает, что у вас есть root-доступ для установки различных RPMS, поэтому я не уверен, как вы с этим справитесь, но возможно построить FF24 на EL5.

Посмотрите на эту статью.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .