在由Apache Spark服务支持的Python 3.5笔记本中,我使用pip
安装了BigDL 0.2。删除该安装并尝试安装 BigDL 0.3 版时,出现此错误:(为提高可读性而添加了换行符)
AssertionError: Multiple .dist-info directories:
/gpfs/fs01/user/scbc-4dbab79416a6ec-4cf890276e2b/.local/lib/python3.5/site-packages/BigDL-0.3.0.dist-info,
/gpfs/fs01/user/scbc-4dbab79416a6ec-4cf890276e2b/.local/lib/python3.5/site-packages/BigDL-0.2.0.dist-info
但是,这些目录都不存在:
!ls -al /gpfs/fs01/user/scbc-4dbab79416a6ec-4cf890276e2b/.local/lib/python3.5/site-packages/
total 0
drwx------ 2 scbc-4dbab79416a6ec-4cf890276e2b users 4096 Nov 8 06:12 .
drwx------ 3 scbc-4dbab79416a6ec-4cf890276e2b users 4096 Nov 8 06:12 ..
怎么了?删除旧软件包后,如何安装新版本的软件包?
错误消息中的目录路径错误。DSX 上的 Python 3.5 内核通过设置环境变量 PIP_BUILD 来指定pip
的构建目录。有多个dist-info目录在那里:
!printenv PIP_BUILD ; ls -l $PIP_BUILD/*
/tmp/scbc-4dbab79416a6ec-4cf890276e2b/pip-build
total 0
drwx------ 8 scbc-4dbab79416a6ec-4cf890276e2b users 117 Nov 7 02:02 bigdl
drwx------ 2 scbc-4dbab79416a6ec-4cf890276e2b users 135 Nov 7 02:02 BigDL-0.2.0.dist-info
drwx------ 2 scbc-4dbab79416a6ec-4cf890276e2b users 135 Nov 8 06:12 BigDL-0.3.0.dist-info
要解决此问题,请删除构建目录:
!rm -rf $PIP_BUILD
之后,pip
可以毫无问题地安装软件包:
!pip install --no-dependencies bigdl==0.3
Collecting bigdl==0.3
Using cached BigDL-0.3.0-py2.py3-none-manylinux1_x86_64.whl
Installing collected packages: bigdl
Successfully installed bigdl