On 21.07.2017 23:17, Jian wrote:
> Hi Imre,>> I tried to use boost.python as you advised. Build boost.python with >> But I got a error in the import.hpp as below:> ------------------------import.hpp start> ----------------------------------------> namespace boost > { > namespace python > {>> object BOOST_PYTHON_DECL import(str name)> {> // should be 'char const *' but older python versions don't use> 'const' yet.> char *n = python::extract<char *>(name);> * python::handle<> module(PyImport_ImportModule(n)); <---here is> where the error raised. n is "__main__"*> return python::object(module);> }>> } // namespace boost::python> } // namespace boost> ------------------------import.hpp> end---------------------------------------->> I copied your code and just replaced 'script.py' with the name of my> own file. I found the error raised when the code importing module> "__main__". >> That's my first time to use boost.python. Could you help about this issue?
This probably means you haven't initialized Python correctly. A good
starting point might be this example:
https://github.com/boostorg/python/blob/develop/example/quickstart/embedding.cpp
(I'm the Boost.Python maintainer. While I'd be happy to help you using
Boost.Python, I think this is mostly orthogonal to your original
question about how to capture output generated by you embedded Python.)
Best,
Stefan
--
...ich hab' noch einen Koffer in Berlin...
_______________________________________________
Cplusplus-sig mailing list
Cplu...@python.org
https://mail.python.org/mailman/listinfo/cplusplus-sig