在一个 conda 虚拟环境的系统路径中包含 FreeCAD
Incude FreeCAD in system path for just one conda virtual environment
我希望能够将 FreeCAD 导入我的 python 脚本,但只能在一个 conda 虚拟环境中。有没有办法在不将 FreeCAD 添加到每个文件开头的路径的情况下执行此操作?我正在使用 Pop!_OS,它在此处的行为应该类似于 Ubuntu。
我已经发现您可以导入 FreeCAD,但我找到的来源是通过在文件开头附加 FreeCAD 库位置来实现的:https://www.freecadweb.org/wiki/Embedding_FreeCAD。看起来您可以通过修改路径变量来规避此问题,而且我能够在我的工作场所 Windows 上这样做。我只想为特定的 conda 虚拟环境执行此操作。
理想情况下,
import FreeCAD
可以在特殊的虚拟环境中工作,但不能在其他环境中工作。
如前所述,通过将 FreeCAD 的目录添加到 PATH 环境变量,我已经得到了在 Windows 上工作的导入语句。它在命令提示符下使用默认的 python,这应该是 anaconda 安装,所以我认为它适用于所有虚拟环境。但是,在 Linux 上,我无法在 python 中导入 FreeCAD,即使我使用
PATH=$PATH:/usr/lib/freecad-python3/lib/
这是我从 "locate FreeCAD.so" 得到的。我得到
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ModuleNotFoundError: No module named 'FreeCAD'
如果能够在两个操作系统上 运行 相同的代码,并且将 PATH 修改限制在一个虚拟环境中,那就太好了。
Conda 不会从 PATH 环境中寻找包。查看 了解详细信息。但首先检查您的软件包是否可以使用 pip
或 conda
安装。
您可以转到 virtualenv 站点包目录并将 freecad 的路径添加到 easy_install.pth
我希望能够将 FreeCAD 导入我的 python 脚本,但只能在一个 conda 虚拟环境中。有没有办法在不将 FreeCAD 添加到每个文件开头的路径的情况下执行此操作?我正在使用 Pop!_OS,它在此处的行为应该类似于 Ubuntu。
我已经发现您可以导入 FreeCAD,但我找到的来源是通过在文件开头附加 FreeCAD 库位置来实现的:https://www.freecadweb.org/wiki/Embedding_FreeCAD。看起来您可以通过修改路径变量来规避此问题,而且我能够在我的工作场所 Windows 上这样做。我只想为特定的 conda 虚拟环境执行此操作。
理想情况下,
import FreeCAD
可以在特殊的虚拟环境中工作,但不能在其他环境中工作。
如前所述,通过将 FreeCAD 的目录添加到 PATH 环境变量,我已经得到了在 Windows 上工作的导入语句。它在命令提示符下使用默认的 python,这应该是 anaconda 安装,所以我认为它适用于所有虚拟环境。但是,在 Linux 上,我无法在 python 中导入 FreeCAD,即使我使用
PATH=$PATH:/usr/lib/freecad-python3/lib/
这是我从 "locate FreeCAD.so" 得到的。我得到
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ModuleNotFoundError: No module named 'FreeCAD'
如果能够在两个操作系统上 运行 相同的代码,并且将 PATH 修改限制在一个虚拟环境中,那就太好了。
Conda 不会从 PATH 环境中寻找包。查看 pip
或 conda
安装。
您可以转到 virtualenv 站点包目录并将 freecad 的路径添加到 easy_install.pth