2016-02-02 5 views
0

Чтобы скомпилировать мой пакет python, я использую pybind11, который является только библиотекой C++ только для заголовка.pip внешние заголовки только для сборки

Я хотел бы загрузить master (или некоторую другую ветку) в setup.py, чтобы я мог включить его во время компиляции.

Как это сделать?

В принципе, я хотел бы получить эквивалент чего-то вроде git clone https://github.com/wjakob/pybind11.git _ext/pybind11.

Вот мой setup.py

from setuptools import setup, find_packages, Extension 

cxxpart = Extension('mymodule.cxxpart', 
        include_dirs = ['_ext/pybind11/include'], 
        extra_compile_args=['-std=c++11'], 
        sources = ['src/cxxpart.cpp']) 
setup(
    name = "mymodule", 
    version = "0.1", 
    packages = find_packages(), 
    ext_modules = [cxxpart], 

    install_requires = ['Flask'], 
) 

Обратите внимание, что я хотел бы получить мастер, а не версию на PyPI.

ответ

0

Не совсем то, что вы просили, но, возможно, полезно: организация pybind на github имеет example, чья setup.py создает зависимость от pybind11. Это гарантирует, что установка вашего расширения сначала вызовет установку pybind11 (через pip & PyPi).