Мне нужна помощь с составлением полуночного командира, чтобы я мог внести некоторые изменения (в образовательных целях) Или даже создание файлов make.
После загрузки последней версии из git. Я пытаюсь выполнить ./autogen.sh. Результат:
maint/autopoint: 418: cannot open /usr/share/gettext/archive.tar.gz: No such file
tar: This does not look like a tar archive
tar: Exiting with failure status due to previous errors
cvs checkout: cannot find module `archive' - ignored
find: `archive': No such file or directory
find: `archive': No such file or directory
find: `archive': No such file or directory
autopoint: *** infrastructure files for version 0.14.3 not found; this is autopoint from GNU gettext-tools 0.17
autopoint: *** Stop.
Я установил gettext и папка /usr/share/gettext
существует. Но нет archive.tar.gz
. Я понятия не имею, что должен содержать этот архив или где его взять.
Можете ли вы помочь мне, пожалуйста?
В maverick пакет gettext больше не содержит archive.tar.gz. Некоторые решения:
Запустите locate "archive.tar.gz"
, чтобы увидеть, есть ли где-нибудь в вашей системе.
Ваша установка gettext - fubar. Переустановите его. Если вы изначально установили с использованием Synaptic или apt-get, выполните эту команду:
sudo apt-get install --reinstall gettext
Если вы скомпилировали ее, вы знаете детали:
cd ~/src/gettext
sudo make uninstall
./configure --prefix=/usr && make && sudo make install
/usr/local/share/gettext
[ 1111] Я просто погуглил «gettext no archive.tar.gz» и обнаружил старую ошибку autopoint , в которой ожидалось, что gettext будет установлен в /usr
, а не в /usr/local
. Конечно, autogen.sh вызывает / usr / bin / autopoint и:
# - gettext_dir directory where the sources are stored.
prefix="/usr"
datarootdir="${prefix}/share"
gettext_dir="${datarootdir}/gettext"
Если ваш gettext был установлен в / usr / local, у вас есть несколько вариантов. (1) Вы можете изменить префикс, но любое обновление Ubuntu до autopoint будет препятствовать ему. (2) Я бы лучше удалил и переустановил gettext в / usr. (3) Конечно, проще всего создать символическую ссылку:
ln -s /usr/local/share/gettext /usr/share/gettext
Самый простой способ скомпилировать исходный код в Ubuntu - это использовать apt-get source, например:
sudo apt-get build-dep mc
sudo apt-get -b source mc
Заменить 'midnightcommander' реальным именем пакета. Я сейчас на машине с Windows, поэтому не могу проверить, как называется пакет, но это может быть 'mc'.
Эта команда загрузит и соберет для вас исходный код, а также любые необходимые вам зависимости. После этого вы можете просто изменить исходный код и вызвать make из корневого каталога проекта для восстановления.