Приветствую всех,
Я использую MinGW, QT и CMake для своего проекта.
Как показано на рисунке, мой проект состоит из двух модулей.
libRinzoCore.DLL - общая библиотека, которая определяет некоторые абстрактные классы и интерфейсы, а также некоторые основные функции приложения. Этот модуль используется для реализации динамических плагинов (которые также являются общими библиотеками, которые автоматическизагружается приложением).
Rinzo.exe - основное приложение. Используются классы "libRinzoCore".
"libRinzoCore" в основном разработаниспользование объектов QT и связывание с библиотекой QT.
"Rinzo.exe" также использует объекты библиотеки QT, некоторые не используются в "libRinzoCore". Так что мне нужно связать библиотеку QT и "libRinzoCore" с этимисполняемый файл.
Я могу без проблем скомпилировать "libRinzoCore", и он сгенерировал два файла "libRinzoCore.DLL" и "libRinzoCore.DLL.a"
Но при компиляции "Rinzo.exe" это даетнародиз-за вывода:
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
И при выполнении "Rinzo.exe" он вылетает с сообщением (это перевод с японского сообщения об ошибке)
"Приложение не может работать правильно (0xc0000005).Нажмите [OK] для отмены "
Вот мои файлы CMake для
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
Работает нормально, если я скомпилирую "libRinzoCore" как статическую библиотеку. И отлично работает в Linux.
Любые советы?