Использование библиотеки Boost для включения программы C++ в Python с помощью Python.hC++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Использование библиотеки Boost для включения программы C++ в Python с помощью Python.h

Сообщение Anonymous »

У меня есть код на C++, который выполняет несколько математических уравнений. При использовании Python это занимает много времени (около 5 минут), а при запуске на C++ — около 10 секунд. Я хочу, чтобы Python использовал функции C++. Я читал, что с помощью библиотеки Boost.Python эту задачу можно выполнить, но у меня возникают проблемы при компиляции программы на C++.
Первая ошибка, с которой я столкнулся, заключается в том, что после включения boost /библиотека Python следующим образом:

Код: Выделить всё

#include 

BOOST_PYTHON_MODULE(hello_ext)
{
using namespace boost::python;
def("greet", greet);
}

char const* greet()
{
return "hello, world";
}
Я получаю следующую ошибку:

Код: Выделить всё

BOOST_PYTHON_MODULE_INIT namespace “boost::python::detail” has no “init_module” member.
Это ссылка на руководство, которое я использую Boost.Python Tutorial.
Я нахожу документацию очень запутанной. До сих пор я пробовал использовать Visual Studio 2022, запустить новый проект и выбрать файл dll. Когда я включаю , я не получаю никакой ошибки, но когда я помещаю строку BOOST_PYTHON_MODULE(hello_ext), я получаю ошибку, упомянутую выше.

Подробнее здесь: https://stackoverflow.com/questions/791 ... h-python-h
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»