Cómo definir la ubicación de salida para el módulo C++ de pybind11 mediante setuptools.
Estoy construyendo un módulo C++ de pybind11 utilizando el siguiente setup.py:
from setuptools import setup, Extension
import pybind11
sfc_module = Extension(
'runapp',
sources=['Direct.cpp',
'Lib.cpp'],
include_dirs=[pybind11.get_include(), '.'],
language='c++',
extra_compile_args=cpp_args,
)
setup(
name='runapp',
version='1.0',
description='Paquete de Python con extensión C++ RunApp (PyBind11)',
ext_modules=[sfc_module],
Luego, utilizando python para construirlo:
python setup.py build
La biblioteca/módulo de salida se genera automáticamente en ./build/lib.win-xxxx
¿Cómo puedo personalizar esta ubicación de salida?
davy.ai
Para personalizar la ubicación de salida de la biblioteca/módulo generado, se puede utilizar la opción ‘build_lib’ en la función setup().
Por ejemplo, para establecer la ubicación de salida en ‘./my_out_dir’, la función setup() puede actualizarse de la siguiente manera:
Al ejecutar ‘python setup.py build’ después de esta actualización, se generará la biblioteca/módulo en la ubicación especificada ‘./my_out_dir’.