2011-07-17 14 views
6

Hice una aplicación Qt GUI que carga archivos JPEG. En mi sistema de desarrollo (Win7) donde tengo instalado el QtSDK (4.7.3), funciona. Cuando muevo la aplicación y algunos archivos DLL necesarios (como QtGui4.dll y otros) a otro sistema, donde isnt instalado el QtSDK, el programa ejecuta, pero jpeg carga cativos. He leído, tengo que agregar el plugin jpeg, pero no sé cómo.incluyen el plugin JPEG en mi solicitud

ya he intentado esto en mi main.cpp:

Q_IMPORT_PLUGIN(qjpeg); 

junto con esto en mi archivo de proyecto:

QTPLUGIN += qjpeg 

pero me dio el error:

cannot find -lqjpegd 

I no me importa si incluyo este complemento de una manera dinámica o estática. Solo necesito que mi aplicación funcione en otros sistemas. Prefiero la manera que es más simple. Lo que probé es la forma estática, ¿verdad? ¿Cómo puedo simplemente incluirlo como un archivo dll en mi aplicación? También comprobé mi directorio

mingw\plugins\imageformats 

y no hay realmente ninguna qjpeg.dll. Pero hay:

qjpeg4.dll qjpegd4.dll libqjpeg4.a

que yo probé con:

Q_IMPORT_PLUGIN(qjpeg4); 
QTPLUGIN += qjpeg4 

pero tengo el mismo error msg. ¿Qué pasa?

Gracias por sus respuestas!

Respuesta

3

Copia la carpeta plugins\imageformats en el directorio de la aplicación. En su principal(), agregue

QApplication a(argc, argv); 
QString sDir = QCoreApplication::applicationDirPath(); 
a.addLibraryPath(sDir+"/plugins"); 
+0

¿Qué objeto es 'a'? – Pietro

+0

'QApplication un (argc, argv);' –

+0

Todavía no funciona ... La salida (utilizando QPrinter para imprimir en pdf) no tiene ninguna imagen. Cualquier solución? – clearScreen

Cuestiones relacionadas