empotrar pyqt en c/c++

Estimados Amigos:

He probado empotrar python en C/C++ y funciona. Ahora estoy tratando de averiguar si es posible empotrar un programa creado en pyqt.
Hasta ahora no lo he podido conseguir.
Las indicaciones para empotrar programa python en C son:

#include <stdio.h>
#include <python2.5>
int main(int argc, char *argv[])
{
  Py_Initialize();
  FILE * f;
  f = fopen("programa.py", "r");
  PyRun_SimpleFile(f, "programa.py");
  Py_Finalize();
  return 0;
}

Para compilar usar:
$ gcc -Wall -O2 -I/usr/include/python2.5/ -c programa.c -o programa.o
$ gcc -Xlinker -lpython2.5 programa.o -lm -L/usr/lib/python2.5/config/libpython2.5.a -o programa

Si alguien sabe como empotrar pyqt en C/C++, desde ya muchas gracias.
Saludos.

No tiene sentido empotrar pyqt en c++. Qt són clases en c++, ¿por qué no usarlas directamente?

Hola nuevamente, al igual que el ejemplo de la calculadora con C y pyQt4.
La idea principal es tener el programa en C y generar solo la interfaz grafica en python a travez de pyQt4, pyGtk, wxPython o Tkinter.
Algunas personas no somos programadores como muchos de ustedes, y debemos tratar de hacer mas facil nuestro sueño de hacer un pequeño programa para uso personal.

Saludos y gracias por la ayuda prestada.

Yo no soy programador, hace justamente un año que empecé a aprender bash y luego python...

Sabiendo C y pyqt4, no debería costarte usar Qt4 directamente en c++... Pero bueno, si el quid de la question es evitar al máximo tener que escribir C/C++, emportrar la gui es lo último que quieres hacer. Además, por lo general, empotrar una gui trae más inconvenientes que ventajas.

Pero bueno, todo eso ya se ha tratado en el otro hilo :)

En realidad lo que no me gusta de la programacion es justamente realizar el programa 4 o 5 veces para acomodarlo al entorno de ejecucion.
Por ej. tienes un programa X, que lo programas con Qt4.
En linux-kde funciona perfecto se ve muy bien y todo lo demas.
Pero en Gnome no te agrada, por lo tanto pasas tu codigo a gtk.
Luego no se, necesitas el programa en windows por ej. y portas tu codigo a las api win32.
Claro el ejemplo es un poco exagerado. alguien me dira usa wxwidget. Pero en realidad no se ven bien los programas Qt en gnome, y los gtk en kde.
Claro es una apreciacion personal.
Ademas alguien dira las bibliotecas son multiplataforma. Si pero muchas veces debes compartir tu trabajo con profesionales que solo saben usar un par de aplicaciones y no puedes estar diciendoles instala tal runtime library para que funcione. Tu sabes donde te van a mandar los clientes.
Personalmente trate de hacer algo en codeblock y los resultados no me agradaron mucho.
Por esa razon me incline por este rumbo, que me agrada bastante. Realizar todo tu programa en C-C++ y le incorporas una gui en python, independiente del sistema que elijas.

Saludos.

Pues por eso es mejor no empotrar las gui.

Por otra parte, Qt4, a partir de la version 4.5, se ve perfectamente en windows, macosx, kde y también en entornos gtk, usando el estilo GTK+.

La verdad es que las librerías Qt están diseñadas para evitar los problemas que tu comentas ;)

Además, si te lo curras, puedes hacer que el programa detecte en qué entorno se está ejecutando y si, por ejemplo, está siendo usado en gnome, cambiar el estilo d qt a GTK+ en vez del que tenga configurado el usuario, todo esto antes de instanciar QApplication.

Yo he optado por una solución aun más simple a la hora de programar: directamente todo en python, así no hay que recompilar ni nada, se integra bien con pyqt4 y es multiplataforma tanto la lógica como la GUI, sin mayores esfuerzos. Y para distribuir en windows, nada como usar GUI2Exe + NSIS. Pero tu enfoque es igualmente válido, sobre todo en caso de que el rendimiento sea un factor clave en tu aplicación (si realiza cálculos complejos o algo así). Puede que te resulte interesante shedskin, un compilador (restringido) de python a C++, que luego puedes compilar de la forma habitual (lo he probado y es sorprendente, aunque todavía no tiene implementada al 100% la librería estándar de python, puede compilar la mayoría de módulos de ésta, y el aumento de eficiencia en el código resultante es asombroso). Es reciente y todavía estña en fase embrionaria, pero es muy prometedor.