故障排除#
有关调试安装的指导,请参阅 常见问题。
git 的问题#
首先,确保你有一个干净的构建和安装(参见 如何完全移除 Matplotlib),获取最新的 git 更新,安装它并在调试模式下运行一个简单的测试脚本:
rm -rf /path/to/site-packages/matplotlib*
git clean -xfd
git pull
python -m pip install -v . > build.out
python -c "from pylab import *; set_loglevel('debug'); plot(); show()" > run.out
并将 build.out
和 run.out
发布到 matplotlib-devel 邮件列表(请不要将git问题发布到 users list)。
当然,你会希望清晰地描述你的问题,你期望得到的结果和你实际得到的结果,但通常一个干净的构建和安装会有所帮助。另请参阅 获取帮助。
文件 */_c_internal_utils.cp311-win_amd64.pyd
的解除链接失败#
DLL 文件可能被多个 Matplotlib 运行实例加载;因此,在尝试解除此文件的链接之前,请检查 Matplotlib 是否未在任何其他应用程序中运行。多个版本的 Matplotlib 可以链接到同一个 DLL,例如,开发版本安装在开发 conda 环境中,而稳定版本在 Jupyter 笔记本中运行。要解决此错误,请完全关闭所有正在运行的 Matplotlib 实例。
Windows 编译错误#
如果在Windows上由于链接Windows头文件的错误导致编译扩展失败,例如 ../../src/_tkagg.cpp:133:10: error: 'WM_DPICHANGED' was not declared in this scope
,你应该检查Meson正在使用哪个编译器:
Build type: native build
Project name: matplotlib
Project version: 3.9.0.dev0
C compiler for the host machine: cc (gcc 7.2.0 "cc (Rev1, Built by MSYS2 project) 7.2.0")
C linker for the host machine: cc ld.bfd 2.29.1
C++ compiler for the host machine: c++ (gcc 7.2.0 "c++ (Rev1, Built by MSYS2 project) 7.2.0")
C++ linker for the host machine: c++ ld.bfd 2.29.1
我们的 依赖项 文档列出了如果您打算使用 MSYS2
时的最低头文件版本。如果您打算使用 MSVC
,那么您可能需要强制 Meson 使用 MSVC。