Ошибка установки debian8
without-doc
param пропал
Already on 'master'
Your branch is up to date with 'origin/master'.
HEAD is now at f7513be Merge pull request #2373 from pragmaware/fix-bug-2364-attempt-2
==> ./autogen.sh
==> ./configure --prefix=home/ouyangsong/.linuxbrew/Cellar/universal-ctags/HEAD-f7513be
==> make
Last 15 lines from /data02/home/ouyangsong/.cache/Homebrew/Logs/universal-ctags/03.make:
rst2man [options] [<source> [<destination>]]
rst2man: error: no such option: --syntax-highlight
Makefile:5771: recipe for target 'man/tags.5' failed
make[1]: *** [man/tags.5] Error 2
Usage
=====
rst2man [options] [<source> [<destination>]]
rst2man: error: no such option: --syntax-highlight
Makefile:5769: recipe for target 'man/ctags.1' failed
make[1]: *** [man/ctags.1] Error 2
make[1]: Leaving directory '/tmp/universal-ctags-20191215-3061613-15gdbok'
Makefile:1266: recipe for target 'all' failed
make: *** [all] Error 2
Ваш rst2man может быть слишком старым.
См. Https://sourceforge.net/p/docutils/patches/141/
Думаю, это проблема системы сборки ctags.
Я устанавливаю последние документы и псевдоним rst2man на последнюю версию rst2man, но все еще не работает.
$ pip install --user --upgrade docutils
$ alias rst2man=//home/ouyangsong/.local/bin/rst2man.py
$ rst2man --version
rst2man.py (Docutils 0.15.2 [release], Python 2.7.9, on linux2)
alias
работает только в вашей оболочке. Как насчет создания символической ссылки?
по умолчанию rst2man находится в /usr/bin
, но у меня нет root.
Я пытаюсь добавить $ PATH, но все еще не работает. @ k-takata, вы имеете в виду, что rst2man работает как подпроцесс, поэтому в подпроцессе rst2man слишком старый.
Извините, я неправильно понял вашу проблему.
Я хотел бы узнать, что выводятся на выходе rst2man --version
и rst2man --help | grep highlight
.
Вот пример:
[yamato@slave]~/var/ctags-github/man% rst2man --version
rst2man --version
rst2man (Docutils 0.14, Python 2.7.15, on linux2)
[yamato@slave]~/var/ctags-github/man% rst2man --help | grep highlight
rst2man --help | grep highlight
--syntax-highlight=<format>
Я думаю, у вашего rst2man нет --syntax-highlight.
Если мое предположение верно, следующий патч может решить проблему.
diff --git a/man/Makefile b/man/Makefile
index ec43caa2..42d911d4 100644
--- a/man/Makefile
+++ b/man/Makefile
@@ -25,7 +25,9 @@ RST2PDF = rst2pdf
# rst2man had a bug about code-block:: handling.
# https://sourceforge.net/p/docutils/patches/141
-RST2MAN_FLAGS = --syntax-highlight=none
+RST2MAN_FLAGS = $(shell if $(RST2MAN) --help | grep -q -e --syntax-highlight; then \
+ echo --syntax-highlight=none; \
+ fi)
RST2HTML_FLAGS =
RST2PDF_FLAGS =
@masatake да, ваше предположение верно. rst2man в /usr/bin
не имеет подсветки синтаксиса.
$ rst2man --help | grep -q -e --syntax-highlight
$ /usr/bin/rst2man --version
rst2man (Docutils 0.8.1 [release], Python 2.7.9, on linux2)
У меня нет root-прав для создания символической ссылки или ее обновления, поэтому я использую зависимости linuxbrew install ctags, а затем следую https://github.com/universal-ctags/ctags/blob/master/docs/autotools.rst для установки в $HOME/.local
, наконец-то сделаем это.
Но странно, что linuxbrew не использует rst2man в $HOME/.local
а использует /usr/bin/rst2man
после создания символической ссылки "$ HOME / .local / bin / rst2man -> $ HOME / .local / bin / rst2man.py "и добавьте $ PATH. Я предполагаю, что linuxbrew использует подпроцесс оболочки, который не использует мой $ PATH
Я не знаю linuxbrew. Однако поведение понятно.
Я думаю, что процесс создания такого инструмента не должен зависеть от среды, настроенной его пользователем.
Во всяком случае, я исправил эту проблему в # 2375. Сливаю после слияния # 2376.
Слил # 2375. @songouyang , не могли бы вы попробовать еще раз?
@masatake, я попробую еще раз, но потерпел неудачу. Я думаю, может быть, вы исправите параметр rst2man в файле man / makefile, но забудьте эту строку в файле makefile.
https://github.com/universal-ctags/ctags/blob/ba26b8a744ab7af3842ba219d75c5dc845ba583e/Makefile.am#L232
==> make
Last 15 lines from /data02/home/ouyangsong/.cache/Homebrew/Logs/universal-ctags/03.make:
rst2man [options] [<source> [<destination>]]
rst2man: error: no such option: --syntax-highlight
Makefile:5773: recipe for target 'man/ctags-incompatibilities.7' failed
make[1]: *** [man/ctags-incompatibilities.7] Error 2
Usage
=====
rst2man [options] [<source> [<destination>]]
rst2man: error: no such option: --syntax-highlight
Makefile:5773: recipe for target 'man/ctags-optlib.7' failed
make[1]: *** [man/ctags-optlib.7] Error 2
make[1]: Leaving directory '/tmp/universal-ctags-20191217-3629840-z9svqb'
Makefile:1266: recipe for target 'all' failed
make: *** [all] Error 2
If reporting this issue please do so at (not Homebrew/brew or Homebrew/core):
https://github.com/universal-ctags/homebrew-universal-ctags/issues
5768 .1.rst.1:
5769 $(rst2man_verbose)$(RST2MAN) $(RST2MAN_OPTIONS) $< $@
5770 .5.rst.5:
5771 $(rst2man_verbose)$(RST2MAN) $(RST2MAN_OPTIONS) $< $@
5772 .7.rst.7:
5773 $(rst2man_verbose)$(RST2MAN) $(RST2MAN_OPTIONS) $< $@
1264 RST2MAN_OPTIONS = --syntax-highlight=none
1265 all: $(BUILT_SOURCES) config.h
1266 $(MAKE) $(AM_MAKEFLAGS) all-am
Спасибо!
Сделаю еще один запрос на перенос.
Не могли бы вы попробовать еще раз?
@masatake , теперь все в порядке, спасибо
Спасибо за тестирование (и за критическое предложение).
Самый полезный комментарий
Я не знаю linuxbrew. Однако поведение понятно.
Я думаю, что процесс создания такого инструмента не должен зависеть от среды, настроенной его пользователем.
Во всяком случае, я исправил эту проблему в # 2375. Сливаю после слияния # 2376.