TPP*_*PPZ 8 pip setup.py python-3.x transitive-dependency conda
我正在研究一个现有的 Python 3 代码库,它提供了一个,setup.py
所以代码被安装为一个 Python 库。我试图让与自己的依赖安装了这个内部库(通常的数据科学的人,例如pandas
,pyodbc
,sqlalchemy
等)。
我希望有这个内部库来处理这些依赖项,并假设如果安装了该库,则假定已安装所有可传递的依赖项。我还想要conda
包的 Anaconda ( ) 版本而不是pip
版本。
我从 开始requirements.txt
,但很快就转移到了这个领域setup.py
:
install_requires=[
"pyodbc>=4.0.27",
"sqlalchemy>=1.3.8",
"pandas>=0.25.1",
"requests>=2.22.0",
"assertpy>=0.14",
"cycler>=0.10.0",
]
Run Code Online (Sandbox Code Playgroud)
但是,当我运行安装过程时:
python setup.py install --record installed_files.txt
pip install .
我看到有一些gcc
/ C++ 编译正在进行,显示有关 Python 轮子的日志(我不完全理解 Python 蛋和 Python 轮子的含义,但 AFAIK 如果conda
可用,那么我应该使用该conda
版本而不是蛋/轮子因为那样我就不必处理 Python 代码下面的 C++ 代码了)。
我真的更喜欢必须conda
安装这些包含在一些 Python 代码中的 C++ blob 作为库,例如pandas
.
conda
驱动 中描述的安装过程,setup.py
所以我不处理gcc
?setup.py
)的其他 Python 代码使用其中定义的相同(可传递)依赖项setup.py
?无论安装方法如何,我如何确保pandas
也安装了 eg 的依赖项?有时我看到运行时未安装numpy
的依赖项,但我想避免手动执行此操作(例如使用某些文件)。pandas
setup.py
requirements.txt
pip
不了解conda
,因此您无法构建可从 conda 通道提取其依赖项的 pip 安装包。
conda
不关心setup.py
,它使用不同的格式来记录依赖关系。
要使用 来安装代码conda
,您应该创建一个 conda 包,并在meta.yaml
文件中指定您的依赖项。详细信息请参阅“conda build”的文档。
https://docs.conda.io/projects/conda-build/en/latest/resources/define-metadata.html
归档时间: |
|
查看次数: |
3711 次 |
最近记录: |