conda build:刚创建的目录访问错误
conda build: Access error on just-created directory
我正在尝试使用 conda build .
构建一个 conda 包。我已经走得很远了,但是在测试之后,我得到了这个输出:
Renaming work directory, C:\ProgramData\Miniconda3\envs\p37\conda-bld\<package-name>_1596716574942\work to
C:\ProgramData\Miniconda3\envs\p37\conda-bld\<package-name>_1596716574942\work_moved_<package-name>-1.1.1-py38_0_win-64
Traceback (most recent call last):
File "C:\ProgramData\Miniconda3\envs\p37\lib\shutil.py", line 566, in move
os.rename(src, real_dst)
PermissionError: [WinError 32] The process cannot access the file because it is being used by another process:
'C:\ProgramData\Miniconda3\envs\p37\conda-bld\<package-name>_1596716574942\work' ->
'C:\ProgramData\Miniconda3\envs\p37\conda-bld\<package-name>_1596716574942\work_moved_<package-name>-1.1.1-py38_0_win-64'
但是当 conda build 本身刚刚创建了整个目录时,怎么可能呢?为了安全起见,我只是重新启动,但这没有帮助。 运行 conda 也没有在管理员提示中构建。
为什么 conda build 是为 python 3.8 构建的? meta.yaml 指定 python>=3.6
并且我所在的 conda 环境安装了 Python 3.7 - 命令行上的 python --version
给出了 3.7.6
。指定 conda build . --python=3.7
不会更改包名称 - 它仍然是 ...py38...
原因是我在 setup.py 中启动了一个子进程。有点令人困惑的是,它在一台机器上 100% 地工作,而在另一台机器上 100% 失败,而且在周末访问之前将程序留在断点(这样子进程应该有时间完成)。然而,改变
cmd = 'pandoc -s --toc -t html doc/manual.md -o '+html_path
subprocess.run(cmd)
至
os.system(cmd)
解决了我的问题。
我正在尝试使用 conda build .
构建一个 conda 包。我已经走得很远了,但是在测试之后,我得到了这个输出:
Renaming work directory, C:\ProgramData\Miniconda3\envs\p37\conda-bld\<package-name>_1596716574942\work to
C:\ProgramData\Miniconda3\envs\p37\conda-bld\<package-name>_1596716574942\work_moved_<package-name>-1.1.1-py38_0_win-64
Traceback (most recent call last):
File "C:\ProgramData\Miniconda3\envs\p37\lib\shutil.py", line 566, in move
os.rename(src, real_dst)
PermissionError: [WinError 32] The process cannot access the file because it is being used by another process:
'C:\ProgramData\Miniconda3\envs\p37\conda-bld\<package-name>_1596716574942\work' ->
'C:\ProgramData\Miniconda3\envs\p37\conda-bld\<package-name>_1596716574942\work_moved_<package-name>-1.1.1-py38_0_win-64'
但是当 conda build 本身刚刚创建了整个目录时,怎么可能呢?为了安全起见,我只是重新启动,但这没有帮助。 运行 conda 也没有在管理员提示中构建。
为什么 conda build 是为 python 3.8 构建的? meta.yaml 指定 python>=3.6
并且我所在的 conda 环境安装了 Python 3.7 - 命令行上的 python --version
给出了 3.7.6
。指定 conda build . --python=3.7
不会更改包名称 - 它仍然是 ...py38...
原因是我在 setup.py 中启动了一个子进程。有点令人困惑的是,它在一台机器上 100% 地工作,而在另一台机器上 100% 失败,而且在周末访问之前将程序留在断点(这样子进程应该有时间完成)。然而,改变
cmd = 'pandoc -s --toc -t html doc/manual.md -o '+html_path
subprocess.run(cmd)
至
os.system(cmd)
解决了我的问题。