Inkscape 0.92.2(snap)导出DXF报错:缺失numpy.linalg模块求助
你遇到的这个报错:
Failed to import the numpy or numpy.linalg modules. These modules are required by this extension. Please install them and try again.
确实是因为Snap打包的Inkscape 0.92.2没有预装numpy模块导致的,下面给你几个可行的解决办法:
给Snap版Inkscape安装numpy模块
Snap是沙箱环境,需要用它自带的Python环境来安装numpy。打开终端运行以下命令:sudo snap run inkscape.pip install numpy这条命令会直接在Inkscape的Snap沙箱内安装numpy模块,安装完成后重启Inkscape,再尝试导出DXF应该就能正常工作了。
切换到Flatpak版Inkscape
你已经提到Flatpak版自带所需的numpy模块,如果你不想折腾Snap的配置,直接安装Flatpak版是最省心的方式:- 先确保系统已安装Flatpak(未安装的话,先运行
sudo apt install flatpak,再执行flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo) - 安装Inkscape:
flatpak install flathub org.inkscape.Inkscape - 启动Flatpak版Inkscape:
flatpak run org.inkscape.Inkscape
这个版本自带所有导出DXF需要的依赖,不需要额外配置。
- 先确保系统已安装Flatpak(未安装的话,先运行
手动复制numpy模块(不推荐)
如果你非要手动操作,可以从系统Python环境或其他可信来源复制numpy和numpy.linalg相关文件到Snap版Inkscape的Python site-packages目录(路径大概是/snap/inkscape/current/usr/lib/python3/dist-packages/),但这种方式容易因版本不兼容出问题,且Snap更新后文件可能被覆盖,所以优先推荐前两种办法。
内容的提问来源于stack exchange,提问作者LVASKZ

