Ctags: rst2man : erreur : aucune option de ce type : --syntax-highlight

Créé le 15 déc. 2019  ·  15Commentaires  ·  Source: universal-ctags/ctags

échec de l'installation de debian8
without-doc param est parti

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
BUILDSYS|git operation|workflow|test harness

Commentaire le plus utile

Je ne connais pas linuxbrew. Cependant, le comportement est compréhensible.
Je pense que le processus de construction d'un tel outil ne doit pas dépendre de l'environnement personnalisé par son utilisateur.

Quoi qu'il en soit, j'ai résolu ce problème dans #2375. Je le fusionnerai après avoir fusionné #2376.

Tous les 15 commentaires

Votre rst2man est peut-être trop vieux.
Voir https://sourceforge.net/p/docutils/patches/141/

Je pense que c'est un problème du système de construction de ctags.

J'installe les derniers docutils et l'alias rst2man sur le dernier rst2man, toujours pas de travail.

$ 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 ne fonctionne que sur votre shell. Que diriez-vous de créer un lien symbolique ?

le rst2man par défaut est dans /usr/bin , mais je n'ai pas de racine.
j'essaie d'ajouter $ PATH, toujours pas de travail. @k-takata, vous voulez dire que le rst2man en cours d'exécution est un sous-processus, donc dans le sous-processus, le rst2man est trop ancien.

Désolé, j'ai mal compris votre problème.
Je voudrais connaître la sortie de rst2man --version et rst2man --help | grep highlight .

Voici un exemple:

[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>

Je suppose que votre rst2man n'a pas --syntax-highlight.
Si ma supposition est correcte, le correctif suivant peut résoudre le problème.

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 oui, votre supposition est juste. le rst2man dans /usr/bin n'a pas de surlignage de syntaxe.

$ rst2man --help | grep -q -e --syntax-highlight
$ /usr/bin/rst2man --version
rst2man (Docutils 0.8.1 [release], Python 2.7.9, on linux2)

je n'ai pas de racine pour créer un lien symbolique ou le mettre à niveau, j'utilise donc les dépendances de linuxbrew install ctags, puis suivez https://github.com/universal-ctags/ctags/blob/master/docs/autotools.rst pour installer sur $HOME/.local , enfin le faire.
Mais il est étrange que linuxbrew n'utilise pas le rst2man dans $HOME/.local mais utilise /usr/bin/rst2man après avoir créé un lien symbolique "$HOME/.local/bin/rst2man -> $HOME/.local/bin/ rst2man.py" et ajoutez $PATH. Je suppose que linuxbrew utilise un sous-processus shell qui n'utilise pas mon $ PATH

Je ne connais pas linuxbrew. Cependant, le comportement est compréhensible.
Je pense que le processus de construction d'un tel outil ne doit pas dépendre de l'environnement personnalisé par son utilisateur.

Quoi qu'il en soit, j'ai résolu ce problème dans #2375. Je le fusionnerai après avoir fusionné #2376.

J'ai fusionné #2375. @songouyang , pouvez-vous réessayer ?

@masatake j'essaie à nouveau et j'ai échoué. Je pense que vous corrigez peut-être l'option rst2man dans man/makefile, mais oubliez cette ligne dans 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

Merci!
Je vais faire une autre pull request.

Pourriez-vous réessayer ?

@masatake c'est bon maintenant, merci

Merci pour le test (et la suggestion critique).

Cette page vous a été utile?
0 / 5 - 0 notes