Web Analytics

Auto-bind-Python-from-CC-

⭐ 3 stars Russian by Taoxuan-168

🌐 Язык

Auto bind Python from CC++ ===================

Достаточно простой, удобный и настраиваемый проект для автоматического связывания C/C++ кода с Python и генерации whl пакета

Данный проект был клонирован из:
https://github.com/Neutree/c_cpp_project_framework и часть, отвечающая за компиляцию, полностью совпадает с оригинальным репозиторием

Пример кода для автоматического биндинга с использованием pybind11:
https://github.com/sipeed/MaixPy/tree/main/components/maix

Быстрый старт

  • 1. Клонируйте этот репозиторий, перейдите в каталог /examples/demo
Используйте python project.py menuconfig для входа в графический интерфейс настройки компилятора и упаковки whl-файла alt text
x86 соответствует компиляции на локальной машине, arm64 — для MaixCam2, RISCV64 — для MaiCam/Pro
alt text
  • 2. Напишите функцию на C/C++, а также заголовочный файл hpp, имя файла whl должно совпадать с именем пакета для автоматического распознавания:
``C++ namespace add::test { int add(int a, int b) { return a + b; } }
Для соответствующей функции добавьте @modul комментарий, далее укажите путь к функции:
C++ namespace add::test { /
  • My function, add two integer.
  • @param a arg a, int type
  • @param b arg b, int type
  • @return int type, will a + b
  • @module add.test.add
*/ int add(int a, int b); }
Первая строка содержит описание функции, @param — описание параметров, @return — описание возвращаемого значения (может быть пустым)
Если требуется только компиляция и упаковка в файл whl, main.cpp изменять не нужно
Используйте python project build для компиляции и упаковки файла whl
После установки файла whl можно напрямую вызывать:
Python import add add.test.add(1,1)
`` Внимание:
  • Один заголовочный файл представляет одно имя модуля, указывающее импортируемый модуль, например, add.hpp соответствует import add, имя модуля должно начинаться с add
  • Прямой запуск cpp_bind_python.py позволяет создать только привязанный cpp-файл, добавление параметра --doc DOC автоматически генерирует документацию из комментариев
--- Tranlated By
Open Ai Tx | Last indexed: 2026-03-06 ---