管理虛擬套件#
“虛擬” 套件被注入到 Conda 求解器中,以允許真實套件依賴於系統上存在的但 Conda 無法直接管理的功能,例如系統驅動程序版本或 CPU 功能。虛擬套件不是真正的套件,並且不會顯示在 conda list
中。相反,conda
運行一小段代碼來檢測與套件相對應的系統功能的存在或不存在。當前支持的虛擬套件列表包括
__cuda
:顯示驅動程序支持的 CUDA 的最大版本。
__osx
:適用時為 OSX 版本。
__glibc
:OS 支持的 glibc 版本。
__linux
:在 Linux 上運行時可用。
__unix
:在 OSX 或 Linux 上運行時可用。
__win
:在 Win 上運行時可用。
__conda
:用於求解的 Conda 版本。
將在未來的 Conda 版本中添加其他虛擬套件。這些由包名稱中的前導雙下劃線表示。
列出檢測到的虛擬套件#
使用終端完成以下步驟。
要查看檢測到的虛擬套件列表,請運行
conda info
如果檢測到套件,您將在 virtual packages
部分中看到它,如以下示例所示
active environment : base
active env location : /Users/demo/dev/conda/devenv
shell level : 1
user config file : /Users/demo/.condarc
populated config files : /Users/demo/.condarc
conda version : 4.6.3.post8+8f640d35a
conda-build version : 3.17.8
python version : 3.7.2.final.0
virtual packages : __cuda=10.0
base environment : /Users/demo/dev/conda/devenv (writable)
channel URLs : https://repo.anaconda.com/pkgs/main/osx-64
https://repo.anaconda.com/pkgs/main/noarch
https://repo.anaconda.com/pkgs/free/osx-64
https://repo.anaconda.com/pkgs/free/noarch
https://repo.anaconda.com/pkgs/r/osx-64
https://repo.anaconda.com/pkgs/r/noarch
package cache : /Users/demo/dev/conda/devenv/pkgs
/Users/demo/.conda/pkgs
envs directories : /Users/demo/dev/conda/devenv/envs
/Users/demo/.conda/envs
platform : osx-64
user-agent : conda/4.6.3.post8+8f640d35a requests/2.21.0 CPython/3.7.2 Darwin/17.7.0 OSX/10.13.6
UID:GID : 502:20
netrc file : None
offline mode : False
覆蓋檢測到的套件#
為了進行故障排除,可以使用環境變量覆蓋虛擬套件檢測。支持的變量包括
CONDA_OVERRIDE_CUDA
- CUDA 版本號,或設置為""
表示未檢測到 CUDA。CONDA_OVERRIDE_OSX
- OSX 版本號,或設置為""
表示未檢測到 OSX。CONDA_OVERRIDE_GLIBC
- GLIBC 版本號,或設置為""
表示沒有 GLIBC。這只適用於 Linux。