rst2pdf and python3

117 views
Skip to first unread message

Beat Gurtner

unread,
May 27, 2020, 6:00:53 AM5/27/20
to sphinx-users
Hi,

I try to run rst2pdf with python3.8:

python3.8 -m sphinx -D language=de -b pdf /Applications/MAMP/htdocs/doc/ /Applications/MAMP/htdocs/pdf/de/

This is the error:


python3.8 -m sphinx -D language=de -b html /Applications/MAMP/htdocs/doc/ /Applications/MAMP/htdocs/de/


Sphinx v3.0.4 in Verwendung

Lade Übersetzungen [de]…erledigt

/usr/local/lib/python3.8/site-packages/rst2pdf/rson.py:140: FutureWarning: Possible nested set at position 2

  splitter = re.compile(pattern).split

loading pickled environment... erledigt

Initiated sphinxcontrib-images backend: `sphinxcontrib_images_lightbox2.lightbox2:LightBox2`

building [mo]: targets for 0 po files that are out of date

building [html]: targets for 1 source files that are out of date

updating environment: 0 added, 1 changed, 0 removed

reading sources... [100%] eyetracking                                                                                                                                                            

/usr/local/lib/python3.8/site-packages/sphinxcontrib/images.py:239: RemovedInSphinx40Warning: The app.add_stylesheet() is deprecated. Please use app.add_css_file() instead.                     

  app.add_stylesheet(os.path.relpath(dest_file_path, STATICS_DIR_PATH))

/usr/local/lib/python3.8/site-packages/sphinxcontrib/images.py:237: RemovedInSphinx40Warning: The app.add_javascript() is deprecated. Please use app.add_js_file() instead.                      

  app.add_javascript(os.path.relpath(dest_file_path, STATICS_DIR_PATH))

Copying static files for sphinxcontrib-images...[100%] lightbox2/img/loading.gif                                                                                                                 

looking for now-outdated files... none found

pickling environment... erledigt

checking consistency... erledigt

preparing documents... erledigt

writing output... [100%] index                                                                                                                                                                   

generating indices...  genindexerledigt

writing additional pages...  searcherledigt

copying images... [100%] img/de/eyex.png                                                                                                                                                         

copying static files... ... erledigt

copying extra files... erledigt

dumping search index in German (code: de)... erledigt

dumping object inventory... erledigt

build abgeschlossen.


The HTML pages are in ../../sakkadentrainer_medical_doc/de.

beatgurtner@Beats-MBP doc % 

python3.8 -m sphinx -D language=de -b pdf /Applications/MAMP/htdocs/sakkadentrainer/doc/ /Applications/MAMP/htdocs/sakkadentrainer_medical_doc/pdf/de/

Sphinx v3.0.4 in Verwendung

Lade Übersetzungen [de]…erledigt

loading pickled environment... erledigt

Initiated sphinxcontrib-images backend: `sphinxcontrib_images_lightbox2.lightbox2:LightBox2`

building [mo]: targets for 0 po files that are out of date

/usr/local/lib/python3.8/site-packages/sphinx/environment/__init__.py:333: RemovedInSphinx40Warning: The suffix argument for doc2path() is deprecated.

  warnings.warn('The suffix argument for doc2path() is deprecated.',

/usr/local/lib/python3.8/site-packages/sphinx/environment/__init__.py:336: RemovedInSphinx40Warning: The string style base argument for doc2path() is deprecated.

  warnings.warn('The string style base argument for doc2path() is deprecated.',

building [pdf]: targets for 23 source files that are out of date

updating environment: 0 added, 0 changed, 0 removed

/usr/local/lib/python3.8/site-packages/sphinxcontrib/images.py:239: RemovedInSphinx40Warning: The app.add_stylesheet() is deprecated. Please use app.add_css_file() instead.                     

  app.add_stylesheet(os.path.relpath(dest_file_path, STATICS_DIR_PATH))

/usr/local/lib/python3.8/site-packages/sphinxcontrib/images.py:237: RemovedInSphinx40Warning: The app.add_javascript() is deprecated. Please use app.add_js_file() instead.                      

  app.add_javascript(os.path.relpath(dest_file_path, STATICS_DIR_PATH))

Copying static files for sphinxcontrib-images...[100%] lightbox2/img/loading.gif                                                                                                                 

looking for now-outdated files... none found

processing Sakkadentrainer_Dokumentation_de_v1.0... 

index 

faq 

medical_product 

registration 

payment 

login 

pw_forgot 

general_training 

car 

train 

dot 

img1 

img3 

statistics 

statistics_details 

settings 

settings_profile 

settings_general 

settings_display 

settings_exercises 

settings_change_pwd 

settings_del 

eyetracking 

/usr/local/lib/python3.8/site-packages/rst2pdf/pdfbuilder.py:214: RemovedInSphinx40Warning: env.indexentries() is deprecated. Please use IndexDomain instead.

  t=copy(self.env.indexentries)

/usr/local/lib/python3.8/site-packages/rst2pdf/pdfbuilder.py:216: RemovedInSphinx40Warning: env.indexentries() is deprecated. Please use IndexDomain instead.

  self.env.indexentries={docname:self.env.indexentries[docname+'-gen']}

/usr/local/lib/python3.8/site-packages/rst2pdf/pdfbuilder.py:218: RemovedInSphinx40Warning: env.indexentries() is deprecated. Please use IndexDomain instead.

  self.env.indexentries={}

/usr/local/lib/python3.8/site-packages/rst2pdf/pdfbuilder.py:220: RemovedInSphinx40Warning: env.indexentries() is deprecated. Please use IndexDomain instead.

  self.env.indexentries[dname]=t.get(dname,[])

/usr/local/lib/python3.8/site-packages/rst2pdf/pdfbuilder.py:222: RemovedInSphinx40Warning: env.indexentries() is deprecated. Please use IndexDomain instead.

  self.env.indexentries=t

resolving references...

done

writing Sakkadentrainer_Dokumentation_de_v1.0... 

[ERROR] pdfbuilder.py:149 [Errno 2] No such file or directory: 'fc-match'

Traceback (most recent call last):

  File "/usr/local/lib/python3.8/site-packages/rst2pdf/pdfbuilder.py", line 146, in write

    docwriter.write(doctree, destination)

  File "/usr/local/lib/python3.8/site-packages/docutils/writers/__init__.py", line 78, in write

    self.translate()

  File "/usr/local/lib/python3.8/site-packages/rst2pdf/pdfbuilder.py", line 625, in translate

    createpdf.RstToPdf(sphinx=True,

  File "/usr/local/lib/python3.8/site-packages/rst2pdf/createpdf.py", line 175, in __init__

    self.loadStyles(stylesheets)

  File "/usr/local/lib/python3.8/site-packages/rst2pdf/createpdf.py", line 275, in loadStyles

    self.styles = sty.StyleSheet(styleSheets,

  File "/usr/local/lib/python3.8/site-packages/rst2pdf/styles.py", line 358, in __init__

    fontList = findfonts.autoEmbed(style[key])

  File "/usr/local/lib/python3.8/site-packages/rst2pdf/findfonts.py", line 323, in autoEmbed

    variants = findTTFont(fname)

  File "/usr/local/lib/python3.8/site-packages/rst2pdf/findfonts.py", line 215, in findTTFont

    family = get_family(fname)

  File "/usr/local/lib/python3.8/site-packages/rst2pdf/findfonts.py", line 179, in get_family

    data = make_string(subprocess.check_output(["fc-match", query]))

  File "/usr/local/Cellar/python@3.8/3.8.2/Frameworks/Python.framework/Versions/3.8/lib/python3.8/subprocess.py", line 411, in check_output

    return run(*popenargs, stdout=PIPE, timeout=timeout, check=True,

  File "/usr/local/Cellar/python@3.8/3.8.2/Frameworks/Python.framework/Versions/3.8/lib/python3.8/subprocess.py", line 489, in run

    with Popen(*popenargs, **kwargs) as process:

  File "/usr/local/Cellar/python@3.8/3.8.2/Frameworks/Python.framework/Versions/3.8/lib/python3.8/subprocess.py", line 854, in __init__

    self._execute_child(args, executable, preexec_fn, close_fds,

  File "/usr/local/Cellar/python@3.8/3.8.2/Frameworks/Python.framework/Versions/3.8/lib/python3.8/subprocess.py", line 1702, in _execute_child

    raise child_exception_type(errno_num, err_msg, err_filename)

FileNotFoundError: [Errno 2] No such file or directory: 'fc-match'

FAILED



I have read this: 


https://github.com/rst2pdf/rst2pdf/issues/796


but in my case it those not seem to work

Komiya Takeshi

unread,
May 27, 2020, 10:16:41 AM5/27/20
to sphinx...@googlegroups.com
It seems rst2pdf invokes `fc-match` command. But it is not installed
in your environment. Please install it and try again.

>FileNotFoundError: [Errno 2] No such file or directory: 'fc-match'

Thanks,
Takeshi KOMIYA

2020年5月27日(水) 19:00 Beat Gurtner <b.re...@gmail.com>:
> --
> You received this message because you are subscribed to the Google Groups "sphinx-users" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to sphinx-users...@googlegroups.com.
> To view this discussion on the web visit https://groups.google.com/d/msgid/sphinx-users/54b034c2-b50e-42f3-acf8-18fceaeacb3a%40googlegroups.com.

Beat Gurtner

unread,
May 27, 2020, 10:20:48 AM5/27/20
to sphinx-users
Hi,

and how can I install fc-match on a mac env.?

> To unsubscribe from this group and stop receiving emails from it, send an email to sphinx...@googlegroups.com.

Komiya Takeshi

unread,
May 27, 2020, 10:32:18 AM5/27/20
to sphinx...@googlegroups.com
Sorry, I don't know. I'm not a user of rst2pdf. So I've never installed it...

2020年5月27日(水) 23:20 Beat Gurtner <b.re...@gmail.com>:
> To unsubscribe from this group and stop receiving emails from it, send an email to sphinx-users...@googlegroups.com.
> To view this discussion on the web visit https://groups.google.com/d/msgid/sphinx-users/0438d4c4-e390-4c20-a400-732913fb12bf%40googlegroups.com.

Roberto Alsina

unread,
May 27, 2020, 10:36:04 AM5/27/20
to sphinx-users
fc-match is par of fontconfig, I am guessing you need to install that via brew.

Beat Gurtner

unread,
May 27, 2020, 11:29:05 AM5/27/20
to sphinx-users
cool.

now it works :D

thanks roberto!
> To view this discussion on the web visit https://groups.google.com/d/msgid/sphinx-users/0438d4c4-e390-4c20-a400-732913fb12bf%40googlegroups.com.

--
You received this message because you are subscribed to the Google Groups "sphinx-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to sphinx...@googlegroups.com.
Reply all
Reply to author
Forward
0 new messages