私はpythonツールを配布するcondaパッケージを作成しようとしています。このツールの一部はcython化されており、python setup.py installを使って完全に動作します。 私はtarを適切に作成しますが、インストールしようとすると、パッケージにはPythonのインポートと.soファイルをリンクする.pyファイルが含まれません。 そのパッケージをインポートしようとすると、モジュールが見つかりません。Condaビルドとcythonの問題
cythonとcondaの周りに見つかったのは、meta.yamlのbuild/runセクションにcython要件を導入することだと思いますが、なぜそれらの.pyファイルは含まれていないのか分かりません。
これは私のsetup.pyファイルが
from setuptools import setup, find_packages
from distutils.core import Extension
from Cython.Build import cythonize
extensions = [Extension('project.src.norm', ['project/src/norm.pyx'])]
setup(
name="PROJECT",
packages=find_packages(),
version="1.0.0",
description="PROJECT",
author='Lab',
author_email='email',
url='http://',
license='LICENSE.txt',
include_package_data=True,
entry_points={'console_scripts': ['exec_file = project.run_exec:main']},
zip_safe=False,
ext_modules=cythonize(extensions),
classifiers=[
'Development Status :: 4 - Beta',
'Environment :: Console',
'Intended Audience :: Bioinformaticians',
'License :: OSI Approved :: BSD License',
'Operating System :: MacOS',
'Operating System :: Microsoft :: Windows',
'Operating System :: POSIX',
'Programming Language :: Python :: 2.7',
]
)
のようなディレクトリ構造に見える
package:
name: project
version: 1.0.0
source:
path: /home/user/project
requirements:
build:
- python >=2.7
- jinja2
- numpy
- scipy
- matplotlib
- pysam
- setuptools
- h5py
- cython
run:
- python >=2.7
- jinja2
- numpy
- scipy
- matplotlib
- pysam >=0.8
- setuptools
- h5py
- cython
build:
preserve_egg_dir: True
entry_points:
- exec_file = project.run_exec:main
about:
license: GPL3
summary: "PROJECT"
私meta.yamlですが編集
project/
setup.py
__init__.py
MANIFEST.in
requirements.txt
README.md
info/
meta.yaml
build.sh
bld.bat
project/
src/
norm.pyx
run_exec.py
subproject/
<etc...>
です: 今日、私は、Pythonを使用してみましたsetup.py bdist_condaの動作は同じですが、それはcondaの問題です。私の設定上の特定の問題。
それは私が推測するのは、setup.pyです。
重要な情報が欠落しているとは、ディレクトリ構造とsetup.pyファイルです。 – DavidW
あなたが言った情報を追加して投稿を編集しました。助けてくれてありがとう – jvaquero
'--setuptools - h5py - cython'は、おそらくパッケージの_run_に必要ではありません。 –