这是我们安装Sphinx的过程。
> choco install python -y -f
> pip install sphinx
我们知道 sphinx 安装是因为以下输出。
> pip show sphinx
---
Metadata-Version: 2.0
Name: Sphinx
Version: 1.4.3
Summary: Python documentation generator
Home-page: http://sphinx-doc.org/
Author: Georg Brandl
Author-email: [email protected]
License: BSD
Location: c:\programdata\chocolatey\lib\python3\tools\lib\site-packages
我们还将其安装位置添加到我们的 PATH 中。
c:\programdata\chocolatey\lib\python3\tools\lib\site-packages
即便如此,运行
sphinx-build
也不行。
'sphinx-build' is not recognized as an internal or external command,
operable program or batch file.
我在使用
pip
安装 Sphinx 时也遇到了这个问题。使用官方文档提出的安装方式解决了问题:
对于 Python 3:
$ apt-get install python3-sphinx
对于 Python 2:
$ apt-get install python-sphinx
对于 macOS Mojave:
$ brew install sphinx-doc
安装 brew 会通知您将它添加到您的路径中,因此将以下行添加到您的 ~/.bash_profile:
export PATH="/usr/local/opt/sphinx-doc/bin:$PATH"
之后你可以运行 sphinx-build 命令 (您可以通过例如检查版本来验证这一点)
$ sphinx-build --version
sphinx-build 2.0.1
调用 sphinx-build 的另一种方法是显式加载 Sphinx 的构建模块。
对于 Sphinx v1.7+:
python -m sphinx.cmd.build
这是我用我的文档做的一个例子:
$ python3 -m sphinx.cmd.build -b html docs/ docs/build/
Running Sphinx v4.0.2
loading pickled environment... done
building [mo]: targets for 0 po files that are out of date
building [html]: targets for 0 source files that are out of date
updating environment: 0 added, 1 changed, 0 removed
reading sources... [100%] api
looking for now-outdated files... none found
pickling environment... done
checking consistency... done
preparing documents... done
writing output... [100%] index
generating indices... genindex done
writing additional pages... search done
copying static files... done
copying extra files... done
dumping search index in English (code: en)... done
dumping object inventory... done
build succeeded.
The HTML pages are in docs/build.
我有了尝试用这个答案加载模块的想法,最初是为了
sphinx-quickstart
。对于 Windows:
在
make.bat
中设置python路径为我解决了问题:
set SPHINXBUILD="D:\Python3\Scripts\sphinx-build.exe"
我们在路径中添加了错误的目录。
错误:
c:\programdata\chocolatey\lib\python3\tools\lib\site-packages
右:
c:\programdata\chocolatey\lib\python3\tools\Scripts
我通过从
pip
安装并重新启动终端来解决问题。
对于 macports 添加
export PATH="/opt/local/Library/Frameworks/Python.framework/Versions/3.7/bin:$PATH"
$HOME/.bash_profile 解决了这个问题
问题可能与Python解释器有关。在某个时间点,一些发行版被删除了
/usr/bin/python
sphinx-build
就靠这个了。所以,可能是
sudo ln -s /usr/bin/python2.7 /usr/bin/python
可能有帮助。但是,这需要小心处理,因为
PATH
指向这个目录,然后一些脚本/程序可能会从其他地方访问 Python2.7 而不是 Python3。