From: Ashika U. U. <au...@bi...> - 2010-08-31 06:08:33
|
Greetings all, Please refer to the image at : http://i34.tinypic.com/30w85xt.png I use MinGW,QT and CMake for my project. As shown in the figure, my project has two modules. * libRinzoCore.DLL : a shared library which define some abstract classes and interfaces and some core functionality of the application.This module is used to implement dynamic Plugins (which are also shared libraries which automatically loaded by the application) . * Rinzo.exe : the main application.This uses "libRinzoCore" classes. "libRinzoCore" mainly developed using QT objects and link against the QT library. "Rinzo.exe" also uses QT library objects,some are not being used in "libRinzoCore".So I have to link QT Library and "libRinzoCore" with this executable. I can compile "libRinzoCore" without problems and it generated two files "libRinzoCore.DLL" and "libRinzoCore.DLL.a" But during compiling "Rinzo.exe" it gives the following output : Linking CXX executable Rinzo.exe Info: resolving IRzPlugin::staticMetaObject by linking to __imp___ZN9IRzPlugin16staticMetaObjectE (auto-import) Info: resolving IRzViewerPlugin::staticMetaObject by linking to __imp___ZN15IRzViewerPlugin16staticMetaObjectE (auto-import) Info: resolving IRzLayeringPlugin::staticMetaObject by linking to __imp___ZN17IRzLayeringPlugin16staticMetaObjectE (auto-import) C:\MinGW\bin\..\lib\gcc\mingw32\3.4.5\..\..\..\..\mingw32\bin\ld.exe: warning: auto-importing has been activated without --enable-auto-import specified on the command line. This should work unless it involves constant data structures referencing symbols from auto-imported DLLs. [100%] Built target Rinzo And when executing "Rinzo.exe" it crashes with the message (this is a translation from Japanese error message) But in linux (with GCC) with works fine. Any tips? PS: Here are my CMake files for libRinzoCore : http://www.keepandshare.com/doc/2199086/rinzocore-txt-august-31-2010-12-10-pm-2k?da=y Rinzo.exe : http://www.keepandshare.com/doc/2199085/rinzo-txt-august-31-2010-12-10-pm-5k?da=y Thanks in advance, umanga |
From: JonY <jo...@us...> - 2010-08-31 06:41:24
|
On 8/31/2010 14:00, Ashika Umanga Umagiliya wrote: > Greetings all, > > Please refer to the image at : > > http://i34.tinypic.com/30w85xt.png > > > I use MinGW,QT and CMake for my project. > As shown in the figure, my project has two modules. > > * libRinzoCore.DLL : a shared library which define some abstract classes and > interfaces and some core functionality of the application.This module is > used to implement dynamic Plugins (which are also shared libraries which > automatically loaded by the application) . > > * Rinzo.exe : the main application.This uses "libRinzoCore" classes. > > "libRinzoCore" mainly developed using QT objects and link against the QT > library. > "Rinzo.exe" also uses QT library objects,some are not being used in > "libRinzoCore".So I have to link QT Library and "libRinzoCore" with this > executable. > > I can compile "libRinzoCore" without problems and it generated two files > "libRinzoCore.DLL" and "libRinzoCore.DLL.a" > > But during compiling "Rinzo.exe" it gives the following output : > > Linking CXX executable Rinzo.exe > Info: resolving IRzPlugin::staticMetaObject by linking to > __imp___ZN9IRzPlugin16staticMetaObjectE (auto-import) > Info: resolving IRzViewerPlugin::staticMetaObject by linking to > __imp___ZN15IRzViewerPlugin16staticMetaObjectE (auto-import) > Info: resolving IRzLayeringPlugin::staticMetaObject by linking to > __imp___ZN17IRzLayeringPlugin16staticMetaObjectE (auto-import) > C:\MinGW\bin\..\lib\gcc\mingw32\3.4.5\..\..\..\..\mingw32\bin\ld.exe: > warning: auto-importing has been activated without --enable-auto-import > specified on the command line. > This should work unless it involves constant data structures referencing > symbols > from auto-imported DLLs. > [100%] Built target Rinzo > > > And when executing "Rinzo.exe" it crashes with the message (this is a > translation from Japanese error message) > But in linux (with GCC) with works fine. > Hi, What is the error message? You can fix those auto-import warnings by using proper dllimport/dllexport for your classes. |
From: Ashika U. U. <au...@bi...> - 2010-08-31 06:45:00
|
Hi Jony, Sorry, the message simply says "Application cannot performe correctly (0xc0000005). Click [OK] to cancel " Does that means I have to modify all my classes ? My application uses only MinGW in Windows and no plans to use VS compiler.Do I still have to use dllimport/dllexport then ? regards, umanga On 31 August 2010 15:23, JonY <jo...@us...> wrote: > On 8/31/2010 14:00, Ashika Umanga Umagiliya wrote: > >> Greetings all, >> >> Please refer to the image at : >> >> http://i34.tinypic.com/30w85xt.png >> >> >> I use MinGW,QT and CMake for my project. >> As shown in the figure, my project has two modules. >> >> * libRinzoCore.DLL : a shared library which define some abstract classes >> and >> interfaces and some core functionality of the application.This module is >> used to implement dynamic Plugins (which are also shared libraries which >> automatically loaded by the application) . >> >> * Rinzo.exe : the main application.This uses "libRinzoCore" classes. >> >> "libRinzoCore" mainly developed using QT objects and link against the QT >> library. >> "Rinzo.exe" also uses QT library objects,some are not being used in >> "libRinzoCore".So I have to link QT Library and "libRinzoCore" with this >> executable. >> >> I can compile "libRinzoCore" without problems and it generated two files >> "libRinzoCore.DLL" and "libRinzoCore.DLL.a" >> >> But during compiling "Rinzo.exe" it gives the following output : >> >> Linking CXX executable Rinzo.exe >> Info: resolving IRzPlugin::staticMetaObject by linking to >> __imp___ZN9IRzPlugin16staticMetaObjectE (auto-import) >> Info: resolving IRzViewerPlugin::staticMetaObject by linking to >> __imp___ZN15IRzViewerPlugin16staticMetaObjectE (auto-import) >> Info: resolving IRzLayeringPlugin::staticMetaObject by linking >> to >> __imp___ZN17IRzLayeringPlugin16staticMetaObjectE (auto-import) >> C:\MinGW\bin\..\lib\gcc\mingw32\3.4.5\..\..\..\..\mingw32\bin\ld.exe: >> warning: auto-importing has been activated without --enable-auto-import >> specified on the command line. >> This should work unless it involves constant data structures >> referencing >> symbols >> from auto-imported DLLs. >> [100%] Built target Rinzo >> >> >> And when executing "Rinzo.exe" it crashes with the message (this is a >> translation from Japanese error message) >> But in linux (with GCC) with works fine. >> >> > Hi, > > What is the error message? > > You can fix those auto-import warnings by using proper dllimport/dllexport > for your classes. > |
From: Tor L. <tm...@ik...> - 2010-08-31 07:12:34
|
> My application uses only MinGW in Windows and no plans to use VS compiler.Do > I still have to use dllimport/dllexport then ? Especially for variables, it is always a good idea to specify explicitly when a variable is imported from a DLL. It is still Windows even if you use MinGW. If that doesn't help, it might be a better idea to ask on a Qt-specific mailing list. --tml |
From: Ashika U. U. <au...@bi...> - 2010-09-01 00:34:14
|
Hi I added dllimport/dllexport for all my classes and now it works fine. Thanks alot for the help. regards, umanga On 31 August 2010 16:12, Tor Lillqvist <tm...@ik...> wrote: > > My application uses only MinGW in Windows and no plans to use VS > compiler.Do > > I still have to use dllimport/dllexport then ? > > Especially for variables, it is always a good idea to specify > explicitly when a variable is imported from a DLL. It is still Windows > even if you use MinGW. > > If that doesn't help, it might be a better idea to ask on a > Qt-specific mailing list. > > --tml > > > ------------------------------------------------------------------------------ > This SF.net Dev2Dev email is sponsored by: > > Show off your parallel programming skills. > Enter the Intel(R) Threading Challenge 2010. > http://p.sf.net/sfu/intel-thread-sfd > _______________________________________________ > MinGW-users mailing list > Min...@li... > > This list observes the Etiquette found at > http://www.mingw.org/Mailing_Lists. > We ask that you be polite and do the same. Disregard for the list > etiquette may cause your account to be moderated. > > _______________________________________________ > You may change your MinGW Account Options or unsubscribe at: > https://lists.sourceforge.net/lists/listinfo/mingw-users > |