Crie bibliotecas para Python com C++ de forma mais fácil

🚀 Nesse vídeo vamos mostrar uma forma mais fácil de criar bibliotecas para Python com C++.


Crie bibliotecas para Python com C++ de forma mais fácil


Nesse vídeo vamos mostrar uma forma mais fácil de criar bibliotecas para Python com C++. No outro vídeo nós vimos o processo e notamos que, de alguma forma, precisamos escrever muita coisa para criar o básico para rodar no Python.

Hoje veremos como usar o wrapper: pybind11 que torna mais fácil, em relação a código, criar bibliotecas para Python.

O endereço do repositório da pybind11 é: https://github.com/pybind/pybind11.

E nesse repositório há o link para a documentação oficial: https://pybind11.readthedocs.io/en/stable/.


Assista ao vídeo


Códigos úteis

Criar e ativar o venv:

mkdir -p ~/.local/bin/venv
python -m venv ~/.local/bin/venv
. ~/.local/bin/venv/bin/activate
pip install pybind11 pytest

Clonar, compilar e instalar:

cmake -B build .
cmake --build build
sudo cmake --install build

Agora vc já pode sair e deletar o repositório clonado: cd && rm -rf pybind11

Código exemplo: main.cpp

#include <pybind11/pybind11.h>

int add(int i, int j) {
    return i + j;
}

PYBIND11_MODULE(example, m) {
    m.doc() = "pybind11 example plugin"; // optional module docstring

    m.def("add", &add, "A function that adds two numbers");
}


Como compilar:

g++ -Wall -shared -std=c++11 -fPIC $(python3.11 -m pybind11 --includes) main.cpp -o example.so

Testar com arquivo Python: script.py:

import example

result = example.add(36, 90)

print(result)

Rodar: python script.py, possível e provável saída: 126.

Para sair do venv digite: deactivate.

Para mais informações consulte esse outro vídeo: Aprenda a Criar Bibliotecas pra Python com C/C++.


cpp python


Compartilhe


Nosso canal no Youtube

Inscreva-se


Marcos Oliveira

Marcos Oliveira

Desenvolvedor de software
https://github.com/terroo


Crie Aplicativos Gráficos para Linux e Windows com C++

Aprenda C++ Moderno e crie Games, Programas CLI, GUI e TUI de forma fácil.

Saiba Mais

Receba as novidades no seu e-mail!

Após cadastro e confirmação do e-mail, enviaremos semanalmente resumos e também sempre que houver novidades por aqui para que você mantenha-se atualizado!