The following simple example crashes.#include <cmath> #include <boost/python.hpp> using namespace boost::python; int main(int argc, char *argv[]) { Py_SetProgramName(argv[0]); Py_Initialize(); object main_module = import("__main__"); object main_namespace = main_module.attr("__dict__"); object ignored = exec("hello = file('hello.txt', 'w')\n" "hello.write('Hello world!')\n" "hello.close()", main_namespace); return 0; }Since I'm using Qt 4.8.2 here is the .pro fileTEMPLATE = app CONFIG += console CONFIG -= app_bundle CONFIG -= qt QMAKE_CXXFLAGS += -std=c++0x LIBS += -L"C:/Python272_32/libs/" -lpython27 INCLUDEPATH +="C:/Python272_32/include" DEPENDPATH += "C:/Python272_32/include" LIBS += -L"C:/Program Files (x86)/boost_1_49/lib" LIBS +=-lboost_python-mgw46-mt-1_49 -lboost_python-mgw46-mt-d-1_49 DEPENDPATH += "C:/Program Files (x86)/boost_1_49" INCLUDEPATH += "C:/Program Files (x86)/boost_1_49" SOURCES += main.cpp
Any guess?My toolchain is set up with a Mingw 4.6.3.
2014-06-11 11:32 GMT+02:00 Miklós Tóth <spiralfuzet@gmail.com>:
M.How to get CPython API? I'm completely lost over here.After I installed Python27 and setuptools what should I do?Hi!
There is something I don't understand.
2014-06-05 17:24 GMT+02:00 Erik H <ice.rikh@gmail.com>:
-ErikGlad to be of help.But you do want to build a Python lib (extension). Boost::python uses the cpython API in the same way as any other python extension and it has the same requirements. Just as you should be able to build pyqt with mingw linking against the official Python binaries, you should be able to build a boost::python extension with mingw linking against the official Python binaries.However, that is all hearsay. It *should* work, according to *stuff I read online*. I will try it at home tonight to confirm/deny this putative workingness.
On Thu, Jun 5, 2014 at 6:18 AM, Miklós Tóth <spiralfuzet@gmail.com> wrote:
MiklósRegards,Thank you very much for your help.I double check it. All of my libs and tools are 32-bit.I can link it with my Qt toolchain (Mingw 4.6.3) and it compiles without error, but it fails to run.I didn't find this page but as I understand it helps to install python libs (extensions) with mingw. What I try to do is build python from src to get an appropriate static library.Hi Erik,Unfortunatly Visual Studio is not an option for me.
2014-06-04 18:50 GMT+02:00 Erik H <ice.rikh@gmail.com>:
-ErikThis is educational for me; to minimize pain, I settled on visual studio + intel compiler long ago whenever I am coerced into windows development.If you don't get any joy, I'll try setting up an official python binaries + mingw environment on my windwoes system at home after work today or tomorrow. Are you strictly targeting 2.7?
You mentioned that did some surfing; did you encounter this page? Apparently, mingw should be able to link against the standard, visual studio compiled python lib. Which would be a blessing for you if it works... Are you trying to build 32-bit binaries linked against 64-bit python libs by any chance?
On Wed, Jun 4, 2014 at 3:07 AM, Miklós Tóth <spiralfuzet@gmail.com> wrote:
It has a -I./Include argument.Here is the gcc command that fails:Yes I'm using makefile but I think the problem is different.Hi Erik,
Thanks for the response.
gcc -c -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -I. -IInclude -I./Include -DPy_BUILD_CORE -o Python/asdl.o Python/asdl.c
So, I surf the Internet (a lot) and I found that at initial there were no autotool support for installing python from source.Later I found a Python 3.4 page were I could download an src setup for mingw installation. Unfortunatly that doesn't work either.
So I reinstalled my Python and somehow I could link the library to my project. (I don't know how this possible, but the latest version of 2.7 works with my project. Blind luck I guess.) I could use PyRun_SimpleString but the PyRun_SimpleFileEx call crashes for some reason.
Than I tried boost::python and it crashes aswell at the first object result = eval("5/2"); call.
(I didn't forget to call Py_Initialize();).Any suggestions?Thanks,Miklós2014-06-03 23:18 GMT+02:00 Erik H <ice.rikh@gmail.com>:ErikRegards,Hi Miklós,Are you using a makefile? If so, it looks like you need to add -I/cygdrive/e/INSTALL/python_src/Python-2.7.6/Include to the Makefile's CFLAGS or CC variable, or somehow ensure that -I/cygdrive/e/INSTALL/python_src/Python-2.7.6/Include is passed to the compiler in any case.
On Mon, Jun 2, 2014 at 3:17 AM, Miklós Tóth <spiralfuzet@gmail.com> wrote:
_______________________________________________Thanks,What am I missing? Any thoughts?but the corresponding file is there:Hi!I get the following error:
Any updates on this?
/cygdrive/e/INSTALL/python_src/Python-2.7.6 $ mingw32-make process_begin: CreateProcess(NULL, /usr/bin/mkdir -p Include, ...) failed. make (e=2): The system cannot find the file specified. mingw32-make: *** [Include/graminit.h] Error 2
/cygdrive/e/INSTALL/python_src/Python-2.7.6 $ ls Include/g* Include/genobject.h Include/graminit.h Include/grammar.h
Miklós2014-05-27 14:06 GMT+02:00 Miklós Tóth <spiralfuzet@gmail.com>:
MiklósCould you give me some advice, or links to achieve my goal?So my python27.lib is "incompatible". I want to compile it from code but I failed with mingw32.As far as I understand I need python headers and libs.Hi All,I want to embed python in my c++ code using boost.python library.
I'm using gcc4.6.3 and qt 4.8.2 and boost 1.49 on windows 7.Thanks,
Boost-users mailing list
Boost-users@lists.boost.org
http://lists.boost.org/mailman/listinfo.cgi/boost-users
_______________________________________________
Boost-users mailing list
Boost-users@lists.boost.org
http://lists.boost.org/mailman/listinfo.cgi/boost-users
_______________________________________________
Boost-users mailing list
Boost-users@lists.boost.org
http://lists.boost.org/mailman/listinfo.cgi/boost-users
_______________________________________________
Boost-users mailing list
Boost-users@lists.boost.org
http://lists.boost.org/mailman/listinfo.cgi/boost-users
_______________________________________________
Boost-users mailing list
Boost-users@lists.boost.org
http://lists.boost.org/mailman/listinfo.cgi/boost-users
_______________________________________________
Boost-users mailing list
Boost-users@lists.boost.org
http://lists.boost.org/mailman/listinfo.cgi/boost-users