我正在使用conda-build
构建Python包。现在我的结构看起来像这样:
- my_recipe/
- meta.yaml
- build.sh
我的meta.yaml
如此阅读:
package:
name: my_pkg
version: "0.2.0"
source:
path: ../my_pkg
requirements:
build:
- python
- setuptools
run:
- python
- pandas
- numpy
- plotly
- matplotlib
- pyqtgraph
- pyopengl
- gdal
- scipy
- scikit-image
当我运行
时,包本身正确构建 conda-build my_recipe/
当我运行
时它会成功安装 conda install -n my_env --use-local ~/miniconda3/envs/my_env/conda-bld/linux-64/my_pkg-0.2.0-py36_0.tar.bz2
但是,run
下列出的所有依赖项似乎都没有随包一起安装(例如,当我在Python中导入包时,它说无法找到pandas
)。
我的依赖项是否列在正确的位置?我是否还需要在setup.py
中列出依赖项?文档不清楚这些信息的位置。
答案 0 :(得分:1)
我发现在安装本地软件包时使用--update-deps
标志确实可以安装软件包的依赖项。像这样:
conda install --use-local --update-deps my-package-name
答案 1 :(得分:0)
我很幸运地告诉 conda
将本地目录视为频道:
conda install my-package-name -c file:///FULL_PATH_TO_CONDA/envs/my_env/conda-bld/
我是根据说明 here 计算出来的,但请注意,我不必先运行 conda index
,因为 conda build
已经创建了 repodata.json
文件。