Hi, After a big fight, I could get through the problem. I am posting it so that others does not waste time solving the issue. I dont know why "evalfile" method is having problems with existing .pyc files. But, we can solve it this way. First create your .cpp and .py file in <somedir> directory. Then, do the following 1. Create somename.qrc file <!DOCTYPE RCC><RCC version="1.0"> <qresource> <file>Filename.py</file> </qresource> </RCC> 2. Navigate to the directory <somedir>. Type the command: qmake -project (It creates project (.pro) file) 3. Next command: qmake (It creates a make file). 4. Then update the makefile INCPATH to add for Python and Python-Qt -I/usr/include/python2.5 -I/home/workspace/PythonQt-1.0/src 5. Update the LIBS -L/usr/lib/python2.5/config/libpython2.5.a -L/home/workspace/PythonQt-1.0/lib -lpython2.5 -lPythonQt WARNING: Always use ":<pythonfilename>" in your cpp file eval command. Then only Qrc will be used to create the corresponding. pyc file. Otherwise, the terminal will crash. Now issue the command "make" and run your application. Things work fine now.
I am not very clear with QRC but its a very good solution. Rgds, Shankar On Fri, Jun 27, 2008 at 2:41 PM, Shankar Narayana <[EMAIL PROTECTED]> wrote: > Hi, > I am newbie to PythonQt. I wanted to access the Qt objects created in C++ > using Python and update things. I had a look at this URL " > http://doc.trolltech.com/qq/qq23-pythonqt.html#decoratorsandcwrappers" > which talks about using PythonQt for the same. > I followed the instructions given in the example. I created my cpp file > and .py file and could make them working. > But once after the first time after .pyc file is created, my program no > longer executes. It is giving me a segmentation fault. If I remove my .pyc > file and run the program, things work fine. > > My cpp file > #include <QApplication> > #include <QTextEdit> > #include "PythonQt.h" > int main(int argc, char* argv[]) > { > QApplication app(argc,argv); > QTextEdit *welcomemsg = new QTextEdit("Hi whatsup"); > PythonQt::init(); > PythonQtObjectPtr mainModule = PythonQt::self()->getMainModule(); > mainModule.addObject("welcomemsg",welcomemsg); // Check with different > names > mainModule.evalFile("Pyscript.py"); > mainModule.removeVariable("welcomemsg"); > PythonQt::cleanup(); > return app.exec(); > } > > My Python file (Pyscript.py) > > from PythonQt import * > #append the text to the existing text edit > welcomemsg.append("Hurray I did it") > welcomemsg.show() > > Can somebody help me what makes this not to run once Python interpreter > works on the Python file and creates a .pyc file ? > > > Regards, > Shankar >
-- http://mail.python.org/mailman/listinfo/python-list