Hi there,
i am currently stuck with a problem which involves a Colibri 600 Board, Windows CE & Qt 4.7.3. I need to build a Qt Crosscompiler for Windows CE 6. So the target system is a colibri board with windows ce. My Host system is Windows 7 with MS Visual Studio 2005. I use nmake and console scripts for compilation.
I followed and tried several howtos and forum answers:
- http://doc.qt.nokia.com/4.7/windowsc...r-a-custom-sdk
- http://doc.qt.nokia.com/4.7/windowsc...omization.html
- http://developer.qt.nokia.com/forums/viewthread/4230
My qmake.conf file looks like this:
include(../common/wince/qmake.conf)
CE_SDK = Colibri600
CE_ARCH = ARMV4I
DEFINES += STANDARDSHELL_UI_MODEL _WIN32_WCE=0x600 $$CE_ARCH _ARMV4I_ armv4i _ARM_ ARM _M_ARM ARM _WIN32 __arm__
DEFINES += WINCE _WINDOWS _UNICODE UNICODE Q_OS_WINCE_WM QT_NO_PRINTER QT_NO_PRINTDIALOG
QMAKE_LFLAGS_CONSOLE = /SUBSYSTEM:WINDOWSCE,6.00 /MACHINE:THUMB /ENTRY:mainACRTStartup
QMAKE_LFLAGS_WINDOWS = /SUBSYSTEM:WINDOWSCE,6.00 /MACHINE:THUMB
QMAKE_LFLAGS_DLL = /SUBSYSTEM:WINDOWSCE,6.00 /MACHINE:THUMB /DLL /SAFESEH:NO
QMAKE_LIBFLAGS_RELEASE = /LTCG
QMAKE_LIBS = corelibc.lib coredll.lib
QMAKE_LIBS_CORE = libcmt.lib corelibc.lib ole32.lib oleaut32.lib uuid.lib commctrl.lib coredll.lib winsock.lib Essentials.lib
QMAKE_LIBS_GUI = ceshell.lib ole32.lib Essentials.lib $$QMAKE_LIBS_CORE
QMAKE_LIBS_NETWORK = ws2.lib $$QMAKE_LIBS_GUI
QMAKE_LIBS_OPENGL =
QMAKE_LIBS_COMPAT =
QMAKE_RC = rc /DUNDER_CE=600 /D_WIN32_WCE=0x600
include(../common/wince/qmake.conf)
CE_SDK = Colibri600
CE_ARCH = ARMV4I
DEFINES += STANDARDSHELL_UI_MODEL _WIN32_WCE=0x600 $$CE_ARCH _ARMV4I_ armv4i _ARM_ ARM _M_ARM ARM _WIN32 __arm__
DEFINES += WINCE _WINDOWS _UNICODE UNICODE Q_OS_WINCE_WM QT_NO_PRINTER QT_NO_PRINTDIALOG
QMAKE_LFLAGS_CONSOLE = /SUBSYSTEM:WINDOWSCE,6.00 /MACHINE:THUMB /ENTRY:mainACRTStartup
QMAKE_LFLAGS_WINDOWS = /SUBSYSTEM:WINDOWSCE,6.00 /MACHINE:THUMB
QMAKE_LFLAGS_DLL = /SUBSYSTEM:WINDOWSCE,6.00 /MACHINE:THUMB /DLL /SAFESEH:NO
QMAKE_LIBFLAGS_RELEASE = /LTCG
QMAKE_LIBS = corelibc.lib coredll.lib
QMAKE_LIBS_CORE = libcmt.lib corelibc.lib ole32.lib oleaut32.lib uuid.lib commctrl.lib coredll.lib winsock.lib Essentials.lib
QMAKE_LIBS_GUI = ceshell.lib ole32.lib Essentials.lib $$QMAKE_LIBS_CORE
QMAKE_LIBS_NETWORK = ws2.lib $$QMAKE_LIBS_GUI
QMAKE_LIBS_OPENGL =
QMAKE_LIBS_COMPAT =
QMAKE_RC = rc /DUNDER_CE=600 /D_WIN32_WCE=0x600
To copy to clipboard, switch view to plain text mode
I configured Qt using the following configure command:
c:\Qt\4.7.3CE>configure -shared -platform win32-msvc2005 -xplatform wince60colib ri600-armv4i-msvc2005 -arch windowsce -opensource -release -declarative -no-qt3s upport -no-openssl -no-opengl -no-openvg -no-webkit -no-phonon -no-phonon-backen d -no-accessibility -iwmmxt -qt-zlib -qt-gif -qt-libpng -qt-libjpeg -qt-libtiff -nomake docs -nomake examples -nomake demos
c:\Qt\4.7.3CE>configure -shared -platform win32-msvc2005 -xplatform wince60colib ri600-armv4i-msvc2005 -arch windowsce -opensource -release -declarative -no-qt3s upport -no-openssl -no-opengl -no-openvg -no-webkit -no-phonon -no-phonon-backen d -no-accessibility -iwmmxt -qt-zlib -qt-gif -qt-libpng -qt-libjpeg -qt-libtiff -nomake docs -nomake examples -nomake demos
To copy to clipboard, switch view to plain text mode
Before I call nmake, i set my environment variables to:
set INCLUDE=C:\Program Files\Microsoft Visual Studio 8\VC\ce\include;C:\Program Files\Microsoft Visual Studio 8\VC\ce\atlmfc\include;C:\WINCE600\Colibri600\Include\Armv4i;C:\Program Files\Microsoft Visual Studio 8\SmartDevices\SDK\Smartphone2003\Include
set LIB=C:\Program Files\Microsoft Visual Studio 8\VC\ce\lib\armv4i;C:\Program Files\Microsoft Visual Studio 8\VC\ce\atlmfc\lib\armv4i;C:\WINCE600\Colibri600\Lib\ARMV4I;C:\Program Files\Microsoft Visual Studio 8\SmartDevices\SDK\Smartphone2003\Lib\armv4;C:\Qt\4.7.3CE\lib
set LIBPATH=C:\Program Files\Microsoft Visual Studio 8\VC\ce\lib\armv4i;C:\Program Files)\Microsoft Visual Studio 8\VC\ce\atlmfc\lib\armv4i;C:\WINCE600\Colibri600\Lib\ARMV4I;C:\Program Files\Microsoft Visual Studio 8\SmartDevices\SDK\Smartphone2003\Lib\armv4;C:\Qt\4.7.3CE\lib
set PATH=C:\Program Files\Microsoft Visual Studio 8\VC\ce\bin\x86_arm;C:\Qt\4.7.3CE\bin;%PATH%
set INCLUDE=C:\Program Files\Microsoft Visual Studio 8\VC\ce\include;C:\Program Files\Microsoft Visual Studio 8\VC\ce\atlmfc\include;C:\WINCE600\Colibri600\Include\Armv4i;C:\Program Files\Microsoft Visual Studio 8\SmartDevices\SDK\Smartphone2003\Include
set LIB=C:\Program Files\Microsoft Visual Studio 8\VC\ce\lib\armv4i;C:\Program Files\Microsoft Visual Studio 8\VC\ce\atlmfc\lib\armv4i;C:\WINCE600\Colibri600\Lib\ARMV4I;C:\Program Files\Microsoft Visual Studio 8\SmartDevices\SDK\Smartphone2003\Lib\armv4;C:\Qt\4.7.3CE\lib
set LIBPATH=C:\Program Files\Microsoft Visual Studio 8\VC\ce\lib\armv4i;C:\Program Files)\Microsoft Visual Studio 8\VC\ce\atlmfc\lib\armv4i;C:\WINCE600\Colibri600\Lib\ARMV4I;C:\Program Files\Microsoft Visual Studio 8\SmartDevices\SDK\Smartphone2003\Lib\armv4;C:\Qt\4.7.3CE\lib
set PATH=C:\Program Files\Microsoft Visual Studio 8\VC\ce\bin\x86_arm;C:\Qt\4.7.3CE\bin;%PATH%
To copy to clipboard, switch view to plain text mode
I got it to work until the linking process: Seems there is a library missing. How can i find the missing library?? Where is the problem?
I guessed there is a library path missing, but i couldn't find out, which one it is.
Error Message:
...
qworkspace.cpp
cl -c -FIqt_gui_pch.h -Yuqt_gui_pch.h -Fptmp\obj\release_shared\QtGui_pch.pch -nologo -Zm200 -Zc:wchar_t- -O2 -MD -W3 -w34100 -w3418
9 -EHs-c- -DQT_SHARED -DQT_THREAD_SUPPORT -DUNDER_CE -DWINCE -D_WINDOWS -D_UNICODE -DUNICODE -D_WIN32 -DQT_NO_PRINTER -DQT_NO_PRINTDIALOG -D
STANDARDSHELL_UI_MODEL -D_WIN32_WCE=0x600 -DARMV4I -D_ARMV4I_ -Darmv4i -D_ARM_ -DARM -D_M_ARM -DARM -D_WIN32 -D__arm__ -DWINCE -D_WINDOWS -D
_UNICODE -DUNICODE -DQ_OS_WINCE_WM -DQT_NO_PRINTER -DQT_NO_PRINTDIALOG -DQT_BUILD_GUI_LIB -DQT_NO_USING_NAMESPACE -DQT_MAKEDLL -DQT_NO_CAST_
TO_ASCII -DQT_ASCII_CAST_WARNINGS -DQT_MOC_COMPAT -DQT_USE_FAST_OPERATOR_PLUS -DQT_USE_FAST_CONCATENATION -D_USE_MATH_DEFINES -DQT_NO_DIRECT
DRAW -DQT_USE_BUNDLED_LIBPNG -DPNG_NO_ASSEMBLER_CODE -DQT_NO_CUPS -DQT_NO_LPR -DQT_NO_OPENTYPE -DQT_NO_STYLE_MAC -DQT_NO_STYLE_CDE -DQT_NO_S
TYLE_WINDOWSVISTA -DQT_NO_STYLE_WINDOWSXP -DQT_NO_STYLE_PLASTIQUE -DQT_NO_STYLE_GTK -DQT_NO_STYLE_CLEANLOOKS -DQT_NO_STYLE_MOTIF -DQT_NO_STY
LE_S60 -DQ_INTERNAL_QAPP_SRC -DQT_DLL -DQT_NO_DEBUG -DQT_CORE_LIB -DQT_HAVE_IWMMXT -DQT_NO_DYNAMIC_CAST -I"..\..\include\QtCore" -I"..\..\in
clude" -I"..\..\include\QtGui" -I"tmp\rcc\release_shared" -I"tmp" -I"..\3rdparty\wintab" -I"image" -I"..\3rdparty\libpng" -I"..\3rdparty\zli
b" -I"..\3rdparty\zlib" -I"..\3rdparty\harfbuzz\src" -I"dialogs" -I"..\..\include\ActiveQt" -I"tmp\moc\release_shared" -I"." -I"..\..\mkspec
s\wince60colibri600-armv4i-msvc2005" -Fotmp\obj\release_shared\ @C:\Users\holsteto\AppData\Local\Temp\qtableview.obj.7432.664799.jom
qtableview.cpp
link /LIBPATH:"c:\Qt\4.7.3CE\lib" /LIBPATH:"c:\Qt\4.7.3CE\lib" /NOLOGO /NODEFAULTLIB:OLDNAMES.LIB /INCREMENTAL:NO /SUBSYSTEM:WINDOWS
CE,6.00 /MACHINE:THUMB /DLL /SAFESEH:NO /VERSION:4.73 /OUT:..\..\lib\QtGui4.dll @C:\Users\holsteto\AppData\Local\Temp\QtGui4.dll.7432.668964
.jom
widgets\qprintpreviewwidget.cpp(0): Warning: No relevant classes found. No output generated.
dialogs\qprintpreviewdialog.cpp(0): Warning: No relevant classes found. No output generated.
Creating library ..\..\lib\QtGui4.lib and object ..\..\lib\QtGui4.exp
qdnd_win.obj : error LNK2019: unresolved external symbol IID_IDataObject referenced in function "public: virtual long __cdecl QOleDataObject
::QueryInterface(struct _GUID const &,void * *)" (?QueryInterface@QOleDataObject@@UAAJABU_GUID@@PAPAX@Z)
qdnd_win.obj : error LNK2019: unresolved external symbol IID_IDropSource referenced in function "public: virtual long __cdecl QOleDropSource
::QueryInterface(struct _GUID const &,void * *)" (?QueryInterface@QOleDropSource@@UAAJABU_GUID@@PAPAX@Z)
qdnd_win.obj : error LNK2019: unresolved external symbol IID_IDropTarget referenced in function "public: virtual long __cdecl QOleDropTarget
::QueryInterface(struct _GUID const &,void * *)" (?QueryInterface@QOleDropTarget@@UAAJABU_GUID@@PAPAX@Z)
qole_win.obj : error LNK2019: unresolved external symbol IID_IEnumFORMATETC referenced in function "public: virtual long __cdecl QOleEnumFmt
Etc::QueryInterface(struct _GUID const &,void * *)" (?QueryInterface@QOleEnumFmtEtc@@UAAJABU_GUID@@PAPAX@Z)
..\..\lib\QtGui4.dll : fatal error LNK1120: 4 unresolved externals
command failed with exit code 1120
command failed with exit code 2
command failed with exit code 2
...
qworkspace.cpp
cl -c -FIqt_gui_pch.h -Yuqt_gui_pch.h -Fptmp\obj\release_shared\QtGui_pch.pch -nologo -Zm200 -Zc:wchar_t- -O2 -MD -W3 -w34100 -w3418
9 -EHs-c- -DQT_SHARED -DQT_THREAD_SUPPORT -DUNDER_CE -DWINCE -D_WINDOWS -D_UNICODE -DUNICODE -D_WIN32 -DQT_NO_PRINTER -DQT_NO_PRINTDIALOG -D
STANDARDSHELL_UI_MODEL -D_WIN32_WCE=0x600 -DARMV4I -D_ARMV4I_ -Darmv4i -D_ARM_ -DARM -D_M_ARM -DARM -D_WIN32 -D__arm__ -DWINCE -D_WINDOWS -D
_UNICODE -DUNICODE -DQ_OS_WINCE_WM -DQT_NO_PRINTER -DQT_NO_PRINTDIALOG -DQT_BUILD_GUI_LIB -DQT_NO_USING_NAMESPACE -DQT_MAKEDLL -DQT_NO_CAST_
TO_ASCII -DQT_ASCII_CAST_WARNINGS -DQT_MOC_COMPAT -DQT_USE_FAST_OPERATOR_PLUS -DQT_USE_FAST_CONCATENATION -D_USE_MATH_DEFINES -DQT_NO_DIRECT
DRAW -DQT_USE_BUNDLED_LIBPNG -DPNG_NO_ASSEMBLER_CODE -DQT_NO_CUPS -DQT_NO_LPR -DQT_NO_OPENTYPE -DQT_NO_STYLE_MAC -DQT_NO_STYLE_CDE -DQT_NO_S
TYLE_WINDOWSVISTA -DQT_NO_STYLE_WINDOWSXP -DQT_NO_STYLE_PLASTIQUE -DQT_NO_STYLE_GTK -DQT_NO_STYLE_CLEANLOOKS -DQT_NO_STYLE_MOTIF -DQT_NO_STY
LE_S60 -DQ_INTERNAL_QAPP_SRC -DQT_DLL -DQT_NO_DEBUG -DQT_CORE_LIB -DQT_HAVE_IWMMXT -DQT_NO_DYNAMIC_CAST -I"..\..\include\QtCore" -I"..\..\in
clude" -I"..\..\include\QtGui" -I"tmp\rcc\release_shared" -I"tmp" -I"..\3rdparty\wintab" -I"image" -I"..\3rdparty\libpng" -I"..\3rdparty\zli
b" -I"..\3rdparty\zlib" -I"..\3rdparty\harfbuzz\src" -I"dialogs" -I"..\..\include\ActiveQt" -I"tmp\moc\release_shared" -I"." -I"..\..\mkspec
s\wince60colibri600-armv4i-msvc2005" -Fotmp\obj\release_shared\ @C:\Users\holsteto\AppData\Local\Temp\qtableview.obj.7432.664799.jom
qtableview.cpp
link /LIBPATH:"c:\Qt\4.7.3CE\lib" /LIBPATH:"c:\Qt\4.7.3CE\lib" /NOLOGO /NODEFAULTLIB:OLDNAMES.LIB /INCREMENTAL:NO /SUBSYSTEM:WINDOWS
CE,6.00 /MACHINE:THUMB /DLL /SAFESEH:NO /VERSION:4.73 /OUT:..\..\lib\QtGui4.dll @C:\Users\holsteto\AppData\Local\Temp\QtGui4.dll.7432.668964
.jom
widgets\qprintpreviewwidget.cpp(0): Warning: No relevant classes found. No output generated.
dialogs\qprintpreviewdialog.cpp(0): Warning: No relevant classes found. No output generated.
Creating library ..\..\lib\QtGui4.lib and object ..\..\lib\QtGui4.exp
qdnd_win.obj : error LNK2019: unresolved external symbol IID_IDataObject referenced in function "public: virtual long __cdecl QOleDataObject
::QueryInterface(struct _GUID const &,void * *)" (?QueryInterface@QOleDataObject@@UAAJABU_GUID@@PAPAX@Z)
qdnd_win.obj : error LNK2019: unresolved external symbol IID_IDropSource referenced in function "public: virtual long __cdecl QOleDropSource
::QueryInterface(struct _GUID const &,void * *)" (?QueryInterface@QOleDropSource@@UAAJABU_GUID@@PAPAX@Z)
qdnd_win.obj : error LNK2019: unresolved external symbol IID_IDropTarget referenced in function "public: virtual long __cdecl QOleDropTarget
::QueryInterface(struct _GUID const &,void * *)" (?QueryInterface@QOleDropTarget@@UAAJABU_GUID@@PAPAX@Z)
qole_win.obj : error LNK2019: unresolved external symbol IID_IEnumFORMATETC referenced in function "public: virtual long __cdecl QOleEnumFmt
Etc::QueryInterface(struct _GUID const &,void * *)" (?QueryInterface@QOleEnumFmtEtc@@UAAJABU_GUID@@PAPAX@Z)
..\..\lib\QtGui4.dll : fatal error LNK1120: 4 unresolved externals
command failed with exit code 1120
command failed with exit code 2
command failed with exit code 2
To copy to clipboard, switch view to plain text mode
Help would be greatly appreciated !!
Thanks a lot in advance
Tobias
Bookmarks