Windows Qt+;MinGW&x2B;另一个未定义的引用`WinMain@16';问题

Windows Qt+;MinGW&x2B;另一个未定义的引用`WinMain@16';问题,windows,qt,mingw,winmain,Windows,Qt,Mingw,Winmain,我知道,我翻遍了整个互联网来找出问题所在,到目前为止没有任何帮助。 我在Windows 7上,使用: Qt 4.8.3: https://download.qt.io/archive/qt/4.8/4.8.3/qt-win-opensource-4.8.3-mingw.exe MinGW32 4.4.0: http://nosymbolfound.blogspot.com/2012/12/since-until-now-qt-under-windows-is.html 我可以使用Qt Crea

我知道,我翻遍了整个互联网来找出问题所在,到目前为止没有任何帮助。

我在Windows 7上,使用:

Qt 4.8.3: https://download.qt.io/archive/qt/4.8/4.8.3/qt-win-opensource-4.8.3-mingw.exe
MinGW32 4.4.0: http://nosymbolfound.blogspot.com/2012/12/since-until-now-qt-under-windows-is.html
我可以使用Qt Creator编译任何Qt演示示例,因此我相信我的系统运行良好。
在试图编译程序时,我遇到了一个众所周知的问题:

g++ -enable-auto-import -o libqlcengine.a object_script.libqlcengine.Debug  -L".\lib" -L"c:\Qt\4.8.3\lib" -lwinmm -L../../hotplugmonitor/src -lhotplugmonitor -lQtScriptd4 -lQtXmld4 -lQtGuid4 -lQtCored4
c:/mingw/bin/../lib/gcc/mingw32/4.4.0/../../../libmingw32.a(main.o):main.c:(.text+0x104): undefined reference to `WinMain@16'
(object_script.libqlcengine.Debug是一个相当长的.o文件列表)
现在,在构建的时候,它试图链接一个static.a库,所以我认为MinGW没有理由去寻找WinMain。我执行了grep“WinMain”,但在整个源代码树上没有找到任何结果。

如果要签出原始来源:

svn co https://qlc.svn.sourceforge.net/svnroot/qlc qlc
或我的分叉版本:

git clone git://git.code.sf.net/p/qlcplus/code qlcplus-code
它们具有相同的结果。
伙计们,我错过了什么?我尝试了一大堆C标志(-mwindows-lmingw32-DQT_NEEDS_MAIN-lqtmain),但没有一个有效。

有魔法吗?

当然,我可以在Linux上构建i386/amd64

已解决: 我只需要在创建库的.pro文件中添加以下行:

win32:QMAKE_LFLAGS += -shared
win32:QMAKE_LFLAGS += -shared

[已解决]

我刚刚发现我需要在创建库的.pro文件中添加以下行:

win32:QMAKE_LFLAGS += -shared
win32:QMAKE_LFLAGS += -shared

请注意。(知道什么是正确的共享标志可能会帮助其他人。而且,将问题留待讨论会让它看起来“没有答案”…)非常抱歉。我是新来的,没有发现如何结束一个问题。我以为版主会这么做。不要关闭它。只需自己添加一个答案,详细说明解决方案。然后接受你自己的答案。任何来自谷歌的人,如果在4.8.3版本的Windows/MinGW上无法构建QML插件时遇到同样的问题:添加
CONFIG+=dll
,这就足够了(不存在)winmain@16错误将消失),请参阅。如果此问题已解决,请将您的解决方案作为答案发布并接受(请参阅:)