Boost.Python utiliser fonction C++ dans Python
Bonjour, je suis actuellement en train de m'essayer à Boost.Python dans le cadre de mon RPG. :mrgreen:
Par contre j'ai un tout petit soucis. Je sais que le code est pas super propre, mais c'est juste pour tester, et ça ne marche pas. Voici donc le code:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
|
#include <boost/python.hpp>
#include <iostream>
using namespace boost::python;
char const* greet() {
return "Hello world!";
}
BOOST_PYTHON_MODULE(test) {
def("greet", greet);
}
int main(int argc, char** argv) {
Py_Initialize();
object main_module = import("__main__");
object global = main_module.attr("__dict__");
object ignored = exec_file("python_test.py", global, global);
return 0;
} |
Le code python_test.py:
Code:
1 2 3
|
import test
print test.greet() |
Et l'erreur:
Code:
1 2 3
|
terminate called after throwing an instance of 'boost::python::error_already_set'
Abandon |
Une idée ? :?