При установке glib вы должны иметь поддержку gettext.
Я пытаюсь установить glib-2.37.6
(также та же проблема с glib-2.32.1
) и получить эту ошибку во время настройки:
Вы должны иметь либо поддержку gettext в вашей библиотеке C, либо использовать библиотеку GNU gettext. ( http://www.gnu.org/software/gettext/gettext.html
Я ранее построил gettext
, хоть. Чтобы уточнить, я пытаюсь построить ряд вещей (приводя к gtk+
) без фактической установки в обычных местах, так как это машина, которую используют другие; вместо этого я использую --prefix=
положить все в рабочий каталог в моем домашнем каталоге.
Я попытался просмотреть журналы, чтобы понять, смогу ли я понять, нужно ли мне устанавливать что-то еще. Я также пытался смотреть на configure
сценарий, хотя я не эксперт по autoconf
, Я обнаружил, что ошибка произошла из-за gt_cv_have_gettext
не был установлен в yes
, Тогда я искал, где он должен был быть установлен, чтобы я мог сказать, какой файл или что он проверял. Но если я что-то упустил, единственная команда, которая установит это yes
под этим if
:
if test "$gt_cv_func_dgettext_libc" != "yes" \
|| test "$gt_cv_func_ngettext_libc" != "yes" \
|| test "$ac_cv_func_bind_textdomain_codeset" != "yes" ; then
config.log
(глядя на configure
номера строк) указывает, что условие было ложным, поэтому все внутри (включая команду для установки gt_cv_have_gettext
) был пропущен. Но тест, кажется, проверяет, что ничего из трех не пропало. И никто из них не является; вот один из последних сегментов config.log
прямо перед ошибкой:
configure:7982: checking for ngettext in libc
configure:8000: gcc -o conftest -g -O2 conftest.c >&5
configure:8000: $? = 0
configure:8009: result: yes
configure:8013: checking for dgettext in libc
configure:8031: gcc -o conftest -g -O2 conftest.c >&5
configure:8031: $? = 0
configure:8040: result: yes
configure:8047: checking for bind_textdomain_codeset
configure:8047: gcc -o conftest -g -O2 conftest.c >&5
configure:8047: $? = 0
configure:8047: result: yes
configure:8323: checking for msgfmt
(Строка, которая установит gt_cv_have_gettext
где-то между 8047 и 8323.) Так что, если я что-то упустил, похоже, что все эти три вещи...ngettext
, dgettext
, bind_textdomain_codeset
- присутствуют (или преуспевают, или что-то), тогда ошибка приведет.
Так чего мне не хватает? Есть ли какая-то другая опция, которую нужно установить, или что-то еще не так с моей конфигурацией? Или я нашел ошибку в configure
скрипт? Спасибо за любую помощь. Я хотел бы спросить на форуме, как это, прежде чем отправлять его в виде сообщения об ошибке.
2 ответа
ОК, думаю, я понял это. Так как я "устанавливал" все в каталоге под моим домашним каталогом, мне нужно было добавить подкаталог "bin" --prefix
каталог к моему $PATH
перед запуском configure
, Это заставило его найти msgfmt
и, я думаю, обошлось без ошибок.
Как добавить подкаталог "bin" каталога --prefix в мой $PATH перед запуском configure. Это заставило его найти msgfmt и, я думаю, обошло его.