Как использовать ссылки на пакеты в виртуальных средах Anaconda в Windows вместо копий?

298
hazrmard

У меня Miniconda3 установлен на моем Windows 10 машины. Я пытаюсь создать виртуальную среду с некоторыми библиотеками, используя ту же версию Python, которая установлена ​​в моей среде по умолчанию. Я использую команду:

conda create -n myenv numpy 

Это должно создать новую виртуальную среду с numpyуже установленной библиотекой .

Это создает новую папку в моем Miniconda3/envs/каталоге. Однако размер папки составляет сотни мегабайт. Он содержит копии исполняемого файла python и других библиотек. Почему копии делаются вместо ссылок? Из документации для conda create, в частности, --copyфлаг:

--copy Install all packages using copies instead of hard- or soft-linking.

Я так понимаю, что без флага condaне следует создавать копии, а просто ссылаться на существующие пакеты. Однако, похоже, это не так.

Как создать виртуальную среду, которая просто ссылается на существующую установку Python, а также может дополнительно ссылаться на установленные пакеты, не создавая копию?

0
Не ответ, но Conda (насколько я понимаю) работает иначе, чем, скажем, `venv` или сторонние библиотеки, такие как virtualenv, и просто создает большие виртуальные среды. Похоже, многое из этого связано с обеспечением зависимости. И хотя это не объясняет поведение (или какие-либо потенциальные решения), оно кажется неразрешенным, хотя бы для некоторых людей, что может привести к мысли, что не может быть хорошего решения. Также обратите внимание, что (очевидно) для NumPy [размер MKL является проблемой] (https://github.com/conda/conda/issues/6756), поскольку он «связан с NumPy в Анаконде». Anaksunaman 6 лет назад 0

0 ответов на вопрос