在Windows中构建应用程序和使用mingw32(在Linux中不会发生这种情况)时,我收到了未定义的引用。该应用程序是分为两个部分:Windows中使用QT,QTcreator和mingw32未定义的引用
1-一组设计者插件与像PRO:
QT + =芯图形SQL
CONFIG + =设计师插件debug_and_release
TARGET = $$ qtLibraryTarget(impwidgetsplugin)
TEMPLATE = LIB
这将生成的文件:在C libimpwidgetsplugin.a和impwidgetsplugin.dll:\ ILRI \ crossimpact \
2-一组在库中的插件要求impwidgetsplugin使用类似PRO:
QT + =芯图形SQL SVG
TARGET = $$ qtLibraryTarget(impmainmodules)TEMPLATE = LIB CONFIG + = 插件
的win32:LIBS + = -Lc:/ ILRI/crossimpact -limpwidgetsplugin
....
的问题是,我总是得到:
./release\plots.o:plots.cpp:(.text+0x13f5): undefined reference to `calcDialog::calcDialog(QWidget*)'
calcDialog在impwidgetsplugin定义。
我可以看到make参数有所需的库limpwidgetsplugin:
g++ -enable-stdcall-fixup -Wl,-enable-auto-import -Wl,-enable-runtime-pseudo-reloc -Wl,-s -mthreads -Wl -shared -Wl,--out-implib,..\..\..\libimpmainmodules.a -o ..\..\..\impmainmodules.dll object_script.impmainmodules.Release -L"c:\Qt\2010.03\qt\lib" -Lc:/ilri/crossimpact -limpwidgetsplugin -lQtSvg4 -lQtSql4 -lQtGui4 -lQtCore4
任何想法,我需要怎么配置PRO所以正确的链接呢?
非常感谢您的帮助。 卡洛斯。
是的!这是问题!非常感谢你。 – QLands 2012-03-23 09:05:36