Bug 97697

Summary: [Qt][WRT] Unresolved external symbol errors with MSVC
Product: WebKit Reporter: Zoltan Arvai <zarvai>
Component: Tools / TestsAssignee: Nobody <webkit-unassigned>
Status: RESOLVED FIXED    
Severity: Normal CC: hausmann, ossy, vestbo, webkit.review.bot
Priority: P2 Keywords: Qt
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
possible fix
none
patch none

Zoltan Arvai
Reported 2012-09-26 10:33:15 PDT
While building QtWebKit2 on Windows WebKitTestRunner fails with "unresolved external symbol" errors. Build environment is - Windows 2008 R2 - Qt5Beta1 manual built with angle support (configured with -opengl-es-2 -angle) - QtWebKit r129607 Full build log located at: https://gist.github.com/3788158 Here is a part of the log: link /NOLOGO /DYNAMICBASE /NXCOMPAT /INCREMENTAL:NO /DLL /MANIFEST /MANIFESTFILE:..\..\..\lib\WTRInjectedBundle.dll.embed.manifest /OUT:..\..\..\lib\WTRInjectedBundle.dll @C:\Users\WEBKIT~1\AppData\Local\Temp\3\nmDC0.tmp Creating library ..\..\..\lib\WTRInjectedBundle.lib and object ..\..\..\lib\WTRInjectedBundle.exp AccessibilityController.obj : error LNK2019: unresolved external symbol _WKAccessibilityRootObject referenced in function "public: class WTF::PassRefPtr<class WTR::AccessibilityUIElement> __thiscall WTR::AccessibilityController::rootElement(void)" (?rootElement@AccessibilityController@WTR@@QAE?AV?$PassRefPtr@VAccessibilityUIElement@WTR@@@WTF@@XZ) AccessibilityController.obj : error LNK2019: unresolved external symbol _WKAccessibilityFocusedObject referenced in function "public: class WTF::PassRefPtr<class WTR::AccessibilityUIElement> __thiscall WTR::AccessibilityController::focusedElement(void)" (?focusedElement@AccessibilityController@WTR@@QAE?AV?$PassRefPtr@VAccessibilityUIElement@WTR@@@WTF@@XZ) TextInputController.obj : error LNK2001: unresolved external symbol _WKRelease InjectedBundle.obj : error LNK2019: unresolved external symbol _WKRelease referenced in function "public: __thiscall WebKit::WKRetainPtr<struct OpaqueWKString const *>::~WKRetainPtr<struct OpaqueWKString const *>(void)" (??1?$WKRetainPtr@PBUOpaqueWKString@@@WebKit@@QAE@XZ) InjectedBundlePage.obj : error LNK2001: unresolved external symbol _WKRelease EventSendingController.obj : error LNK2001: unresolved external symbol _WKRelease TestRunner.obj : error LNK2001: unresolved external symbol _WKRelease
Attachments
possible fix (6.50 KB, patch)
2012-09-27 09:44 PDT, Zoltan Arvai
no flags
patch (6.45 KB, patch)
2012-10-01 02:48 PDT, Zoltan Arvai
no flags
Zoltan Arvai
Comment 1 2012-09-26 10:39:02 PDT
It needs some investigation, because on an other machine it built successfully. Full log is available here: https://gist.github.com/3788989 The failing machine has Windows 2008 r2 (64bit) and 8 cores. Other machine has Windows 7 (64bit) and 4 cores. I started a build with only 1 core (without CL=/MP) on the first machine to see if the problem caused by the order of concurrent buildings.
Zoltan Arvai
Comment 2 2012-09-27 00:54:19 PDT
The build under win2008r2 with 1 core finished with missing 'WorkQueue.h' error. Full log: https://gist.github.com/3792734 Part of the 1 core log: cl -c -nologo -Zm200 -Zc:wchar_t -wd4291 -wd4344 -wd4396 -wd4503 -wd4800 -wd4819 -wd4996 -O2 -MD -GR -EHsc -DUNICODE -DWIN32 -DBUILDING_QT__=1 -DNDEBUG -DENABLE_3D_RENDERING=1 -DENABLE_BLOB=1 -DENABLE_CHANNEL_MESSAGING=1 -DENABLE_CSS_BOX_DECORATION_BREAK=1 -DENABLE_CSS_EXCLUSIONS=1 -DENABLE_CSS_FILTERS=1 -DENABLE_CSS_IMAGE_SET=1 -DENABLE_CSS_REGIONS=1 -DENABLE_CSS_STICKY_POSITION=1 -DENABLE_DATALIST_ELEMENT=1 -DENABLE_DETAILS_ELEMENT=1 -DENABLE_FAST_MOBILE_SCROLLING=1 -DENABLE_FILTERS=1 -DENABLE_FTPDIR=1 -DENABLE_FULLSCREEN_API=1 -DENABLE_GESTURE_EVENTS=1 -DENABLE_ICONDATABASE=1 -DENABLE_IFRAME_SEAMLESS=1 -DENABLE_INPUT_TYPE_COLOR=1 -DENABLE_INSPECTOR=1 -DENABLE_INSPECTOR_SERVER=1 -DENABLE_JAVASCRIPT_DEBUGGER=1 -DENABLE_LEGACY_NOTIFICATIONS=1 -DENABLE_LEGACY_VIEWPORT_ADAPTION=1 -DENABLE_LEGACY_VENDOR_PREFIXES=1 -DENABLE_LEGACY_WEBKIT_BLOB_BUILDER=1 -DENABLE_METER_ELEMENT=1 -DENABLE_NOTIFICATIONS=1 -DENABLE_PAGE_VISIBILITY_API=1 -DENABLE_PROGRESS_ELEMENT=1 -DENABLE_REQUEST_ANIMATION_FRAME=1 -DENABLE_SHARED_WORKERS=1 -DENABLE_SMOOTH_SCROLLING=1 -DENABLE_SQL_DATABASE=1 -DENABLE_SVG=1 -DENABLE_SVG_FONTS=1 -DENABLE_TOUCH_ADJUSTMENT=1 -DENABLE_TOUCH_EVENTS=1 -DENABLE_WEB_SOCKETS=1 -DENABLE_WEB_TIMING=1 -DENABLE_WORKERS=1 -DWTF_USE_TILED_BACKING_STORE=1 -DHAVE_QTQUICK=1 -DHAVE_QTPRINTSUPPORT=1 -DHAVE_QSTYLE=1 -DHAVE_QTTESTLIB=1 -DENABLE_NETSCAPE_PLUGIN_API=1 -DPLUGIN_ARCHITECTURE_UNSUPPORTED=1 -DWTF_USE_3D_GRAPHICS=1 -DENABLE_WEBGL=1 -DENABLE_CSS_SHADERS=1 -DENABLE_ORIENTATION_EVENTS=1 -DENABLE_DEVICE_ORIENTATION=1 -DENABLE_TOUCH_SLIDER=1 -DENABLE_ACCELERATED_2D_CANVAS=0 -DENABLE_ANIMATION_API=0 -DENABLE_BATTERY_STATUS=0 -DENABLE_CSP_NEXT=0 -DENABLE_CSS_GRID_LAYOUT=0 -DENABLE_CSS_HIERARCHIES=0 -DENABLE_CSS_IMAGE_ORIENTATION=0 -DENABLE_CSS_IMAGE_RESOLUTION=0 -DENABLE_CSS_VARIABLES=0 -DENABLE_CSS3_TEXT_DECORATION=0 -DENABLE_DASHBOARD_SUPPORT=0 -DENABLE_DATAGRID=0 -DENABLE_DATA_TRANSFER_ITEMS=0 -DENABLE_DIRECTORY_UPLOAD=0 -DENABLE_DOWNLOAD_ATTRIBUTE=0 -DENABLE_FILE_SYSTEM=0 -DENABLE_GAMEPAD=0 -DENABLE_GEOLOCATION=0 -DENABLE_HIGH_DPI_CANVAS=0 -DENABLE_INDEXED_DATABASE=0 -DENABLE_INPUT_SPEECH=0 -DENABLE_INPUT_TYPE_DATE=0 -DENABLE_INPUT_TYPE_DATETIME=0 -DENABLE_INPUT_TYPE_DATETIMELOCAL=0 -DENABLE_INPUT_TYPE_MONTH=0 -DENABLE_INPUT_TYPE_TIME=0 -DENABLE_INPUT_TYPE_WEEK=0 -DENABLE_LEGACY_CSS_VENDOR_PREFIXES=0 -DENABLE_LINK_PREFETCH=0 -DENABLE_LINK_PRERENDER=0 -DENABLE_MATHML=0 -DENABLE_MEDIA_SOURCE=0 -DENABLE_MEDIA_STATISTICS=0 -DENABLE_MEDIA_STREAM=0 -DENABLE_MHTML=0 -DENABLE_MICRODATA=0 -DENABLE_MUTATION_OBSERVERS=0 -DENABLE_NAVIGATOR_CONTENT_UTILS=0 -DENABLE_NETWORK_INFO=0 -DENABLE_QUOTA=0 -DENABLE_SCRIPTED_SPEECH=0 -DENABLE_SHADOW_DOM=0 -DENABLE_STYLE_SCOPED=0 -DENABLE_SVG_DOM_OBJC_BINDINGS=0 -DENABLE_TEXT_AUTOSIZING=0 -DENABLE_TEXT_NOTIFICATIONS_ONLY=0 -DENABLE_TOUCH_ICON_LOADING=0 -DENABLE_UNDO_MANAGER=0 -DENABLE_VIBRATION=0 -DENABLE_VIDEO=0 -DENABLE_VIDEO_TRACK=0 -DENABLE_WEB_AUDIO=0 -DENABLE_XSLT=0 -DBUILDING_WTRInjectedBundle -DBUILDING_WEBKIT -DQT_ASCII_CAST_WARNINGS -DSQLITE_CORE -DSQLITE_OMIT_LOAD_EXTENSION -DSQLITE_OMIT_COMPLETE -DQT_DLL -DQT_NO_DEBUG -DQT_PLUGIN -DQT_WEBKIT_LIB -DQT_WIDGETS_LIB -DQT_SENSORS_LIB -DQT_SQL_LIB -DQT_NETWORK_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_OPENGL_ES_2 -DQT_OPENGL_ES_2_ANGLE -I"." -I"generated" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Tools\WebKitTestRunner\InjectedBundle" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Tools\WebKitTestRunner" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Tools\WebKitTestRunner\InjectedBundle\Bindings" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\testing\js" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebKit\qt\WebCoreSupport" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Tools\DumpRenderTree\qt" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source" -I"..\..\..\Source\include" -I"C:\WebKitBuildSlave\Qt5.0.0beta1-angle\qt5\qtbase\include" -I"C:\WebKitBuildSlave\Qt5.0.0beta1-angle\qt5\qtbase\include\QtScript" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\JavaScriptCore\os-win32" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\Modules\filesystem" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\Modules\geolocation" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\Modules\indexeddb" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\Modules\navigatorcontentutils" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\Modules\notifications" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\Modules\quota" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\Modules\webaudio" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\Modules\webdatabase" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\Modules\websockets" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\accessibility" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\bindings" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\bindings\generic" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\bridge" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\bridge\qt" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\css" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\dom" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\dom\default" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\editing" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\fileapi" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\history" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\html" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\html\canvas" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\html\parser" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\html\shadow" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\html\track" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\inspector" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\loader" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\loader\appcache" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\loader\archive" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\loader\cache" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\loader\icon" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\mathml" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\page" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\page\animation" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\page\qt" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\page\scrolling" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\platform" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\platform\animation" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\platform\audio" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\platform\graphics" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\platform\graphics\filters" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\platform\graphics\filters\arm" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\platform\graphics\opengl" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\platform\graphics\opentype" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\platform\graphics\qt" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\platform\graphics\surfaces" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\platform\graphics\texmap" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\platform\graphics\transforms" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\platform\image-decoders" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\platform\image-decoders\bmp" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\platform\image-decoders\ico" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\platform\image-decoders\gif" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\platform\image-decoders\jpeg" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\platform\image-decoders\png" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\platform\image-decoders\webp" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\platform\leveldb" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\platform\mock" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\platform\network" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\platform\network\qt" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\platform\qt" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\platform\sql" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\platform\text" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\platform\text\transcoder" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\plugins" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\rendering" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\rendering\mathml" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\rendering\style" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\rendering\svg" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\storage" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\svg" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\svg\animation" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\svg\graphics" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\svg\graphics\filters" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\svg\properties" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\testing" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\websockets" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\workers" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\xml" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\xml\parser" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\ThirdParty" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\bridge\jsc" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\bindings\js" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\bridge\c" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\testing\js" -I"..\..\..\Source\WebCore\generated" -I"C:\WebKitBuildSlave\Qt5.0.0beta1-angle\qt5\qtbase\src\3rdparty\sqlite" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WebCore\platform\win" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\JavaScriptCore" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WTF" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\JavaScriptCore\assembler" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\JavaScriptCore\bytecode" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\JavaScriptCore\bytecompiler" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\JavaScriptCore\heap" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\JavaScriptCore\dfg" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\JavaScriptCore\debugger" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\JavaScriptCore\disassembler" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\JavaScriptCore\interpreter" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\JavaScriptCore\jit" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\JavaScriptCore\llint" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\JavaScriptCore\parser" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\JavaScriptCore\profiler" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\JavaScriptCore\runtime" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\JavaScriptCore\tools" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\JavaScriptCore\yarr" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\JavaScriptCore\API" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\JavaScriptCore\ForwardingHeaders" -I"..\..\..\Source\JavaScriptCore\generated" -I"C:\WebKitBuildSlave\proba5beta\WebKit\Source\WTF" -I"C:\WebKitBuildSlave\szeged-windows-1\qt-windows-32bit-release\build\WebKitBuild\Release\include" -I"C:\WebKitBuildSlave\szeged-windows-1\qt-windows-32bit-release\build\WebKitBuild\Release\include\QtWebKit" -I"C:\WebKitBuildSlave\Qt5.0.0beta1-angle\qt5\qtbase\include\QtWidgets" -I"C:\WebKitBuildSlave\Qt5.0.0beta1-angle\qt5\qtbase\include\QtSensors" -I"C:\WebKitBuildSlave\Qt5.0.0beta1-angle\qt5\qtbase\include\QtSql" -I"C:\WebKitBuildSlave\Qt5.0.0beta1-angle\qt5\qtbase\include\QtNetwork" -I"C:\WebKitBuildSlave\Qt5.0.0beta1-angle\qt5\qtbase\include\QtGui" -I"C:\WebKitBuildSlave\Qt5.0.0beta1-angle\qt5\qtbase\include\QtGui\5.0.0" -I"C:\WebKitBuildSlave\Qt5.0.0beta1-angle\qt5\qtbase\include\QtGui\5.0.0\QtGui" -I"C:\WebKitBuildSlave\Qt5.0.0beta1-angle\qt5\qtbase\include\QtCore" -I"C:\WebKitBuildSlave\Qt5.0.0beta1-angle\qt5\qtbase\include\QtCore\5.0.0" -I"C:\WebKitBuildSlave\Qt5.0.0beta1-angle\qt5\qtbase\include\QtCore\5.0.0\QtCore" -I"C:\WebKitBuildSlave\angle\trunk\lib\Release\include" -I"." -I"C:\WebKitBuildSlave\Qt5.0.0beta1-angle\qt5\qtbase\mkspecs\win32-msvc2010" -Foobj\release\ @C:\Users\WEBKIT~1\AppData\Local\Temp\3\nm993F.tmp QtInitializeTestFonts.cpp TestRunnerQt.cpp C:\WebKitBuildSlave\proba5beta\WebKit\Tools\DumpRenderTree\qt\TestRunnerQt.cpp(34) : fatal error C1083: Cannot open include file: 'WorkQueue.h': No such file or directory Generating Code... NMAKE : fatal error U1077: '"c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\BIN\cl.EXE"' : return code '0x2' Stop.
Zoltan Arvai
Comment 3 2012-09-27 00:59:37 PDT
After adding $${ROOT_WEBKIT_DIR}/Tools/DumpRenderTree to Target.pri and clean building with 8 core the "unresolved external symbol" error returned :( Full log: https://gist.github.com/3792779
Zoltan Arvai
Comment 4 2012-09-27 02:46:53 PDT
I have successfully reproduced the build issue on Windows7 machine. A moved the WebKit directory to a longer path ("C:\WebKitBuildSlave\proba5beta\WebKit") that exactly the same as on the Win2008r2 machine. At the same time we figured out with KBalazs that qt/TestRunnerQt.cpp exists in two location: - $${ROOT_WEBKIT_DIR}/Tools/WebKitTestRunner/InjectedBundle/qt/TestRunnerQt.cpp - $${ROOT_WEBKIT_DIR}/Tools/DumpRenderTree/qt/TestRunnerQt.cpp and it seems the build system chose the wrong one. So I added the explicit path to Target.pri. I am looking forward to see the result of this build.
Csaba Osztrogonác
Comment 5 2012-09-27 03:02:31 PDT
(In reply to comment #4) > I have successfully reproduced the build issue on Windows7 machine. A moved the WebKit directory to a longer path ("C:\WebKitBuildSlave\proba5beta\WebKit") that exactly the same as on the Win2008r2 machine. > > At the same time we figured out with KBalazs that qt/TestRunnerQt.cpp exists in two location: > - $${ROOT_WEBKIT_DIR}/Tools/WebKitTestRunner/InjectedBundle/qt/TestRunnerQt.cpp > - $${ROOT_WEBKIT_DIR}/Tools/DumpRenderTree/qt/TestRunnerQt.cpp > and it seems the build system chose the wrong one. So I added the explicit path to Target.pri. I am looking forward to see the result of this build. Argh ... MSVC always has problem with same filenames with batch build :-/ In this case we usually renames files.
Simon Hausmann
Comment 6 2012-09-27 03:11:05 PDT
(In reply to comment #5) > (In reply to comment #4) > > I have successfully reproduced the build issue on Windows7 machine. A moved the WebKit directory to a longer path ("C:\WebKitBuildSlave\proba5beta\WebKit") that exactly the same as on the Win2008r2 machine. > > > > At the same time we figured out with KBalazs that qt/TestRunnerQt.cpp exists in two location: > > - $${ROOT_WEBKIT_DIR}/Tools/WebKitTestRunner/InjectedBundle/qt/TestRunnerQt.cpp > > - $${ROOT_WEBKIT_DIR}/Tools/DumpRenderTree/qt/TestRunnerQt.cpp > > and it seems the build system chose the wrong one. So I added the explicit path to Target.pri. I am looking forward to see the result of this build. > > Argh ... MSVC always has problem with same filenames with batch build :-/ > In this case we usually renames files. Aw snap, you're right. Hmm, instead of renaming we could also perhaps handle QtInitializeTestFonts.cpp differently. For example we could simply have a QtInitializeTestFonts.cpp in InjectedBundle/qt that itself contains an #include "../../path/to/QtInitializeTestFonts.cpp" and thus avoid the include path addition
Zoltan Arvai
Comment 7 2012-09-27 04:42:27 PDT
Adding explicit path to SOURCES and HEADERS didn't help. SOURCES += \ $${ROOT_WEBKIT_DIR}/Tools/WebKitTestRunner/InjectedBundle/qt/TestRunnerQt.cpp \ HEADERS += \ $${ROOT_WEBKIT_DIR}/Tools/WebKitTestRunner/InjectedBundle/TestRunner.h \ It seems the build is ok without any change when WebKit location is C:\WebKitBuildSlave\WebKit but it fails with unresolved external symbol error when its located at C:\WebKitBuildSlave\proba5beta\WebKit Is there any known path length limitation in Windows?
Zoltan Arvai
Comment 8 2012-09-27 09:44:08 PDT
Created attachment 166023 [details] possible fix Simon's suggestion seems to work on win7 machine. I run a test build on win2008r2 machine to be sure.
WebKit Review Bot
Comment 9 2012-09-27 09:46:14 PDT
Attachment 166023 [details] did not pass style-queue: Failed to run "['Tools/Scripts/check-webkit-style', '--diff-files', u'Tools/ChangeLog', u'Tools/WebKitTestRunner..." exit_code: 1 Tools/WebKitTestRunner/InjectedBundle/qt/QtInitializeTestFonts.cpp:29: Found header this file implements before WebCore config.h. Should be: config.h, primary header, blank line, and then alphabetically sorted. [build/include_order] [4] Tools/WebKitTestRunner/InjectedBundle/qt/QtInitializeTestFonts.cpp:29: Could not find a newline character at the end of the file. [whitespace/ending_newline] [5] Tools/WebKitTestRunner/InjectedBundle/qt/QtInitializeTestFonts.h:29: Could not find a newline character at the end of the file. [whitespace/ending_newline] [5] Total errors found: 3 in 4 files If any of these errors are false positives, please file a bug against check-webkit-style.
Zoltan Arvai
Comment 10 2012-09-28 00:42:01 PDT
Some update: Missing 'WorkQueue.h' problem is solved by the patch, but WTR still has unresolved external symbols problem on Win2008r2. I tested it with 8 and 1 core configuration, too.
Zoltan Arvai
Comment 11 2012-09-28 16:55:11 PDT
I found a really nasty thing in the WebKitBuild directory. It seems if more than one build is running on the same machine at the same time, makefiles can be messed up. On the win2008r2 machine a buildbot is running in the background. On the win7 machine I run only one build at a time. I searched for differences in win7 and win2008r2 machines WebKitBuild dir and I found strange makefiles, e.g.: C:\WebKitBuildSlave\proba5beta\WebKit\WebKitBuild\Release\Source\WTF\Makefile.WTF The right one is here: https://gist.github.com/3802594 The bad one is here: https://gist.github.com/3802589 It must not contain lines like this: C:\WebKitBuildSlave\szeged-windows-1\qt-windows-32bit-release\build\WebKitBuild\Release\Tools\qmake\mkspecs\modules-inst\qt_webkit.pri \ This is the other build dir, not the "proba5beta\WebKit\WebKitBuild" that i currently working with. I will run a test later with turned off buildbot. It should generate a working build.
Zoltan Arvai
Comment 12 2012-10-01 02:48:21 PDT
Created attachment 166435 [details] patch Fix mixed up DRT and WTR source files.
Zoltan Arvai
Comment 13 2012-10-01 02:51:04 PDT
Unresolved external symbol error caused by running multiple build at the same time. Maybe Qt developer build casing this issue, I'll check it.
Tor Arne Vestbø
Comment 14 2012-10-01 03:55:57 PDT
(In reply to comment #13) > Unresolved external symbol error caused by running multiple build at the same time. Maybe Qt developer build casing this issue, I'll check it. Building two webkits at the same time against the same developer-built Qt would break yes. The qt_webkit.pri module file would get overwritten and suddenly point to the other build.
Zoltan Arvai
Comment 15 2012-10-03 01:08:19 PDT
(In reply to comment #14) > (In reply to comment #13) > > Unresolved external symbol error caused by running multiple build at the same time. Maybe Qt developer build casing this issue, I'll check it. > > Building two webkits at the same time against the same developer-built Qt would break yes. The qt_webkit.pri module file would get overwritten and suddenly point to the other build. At first I built Qt5 with prefix pointing to qtbase: configure -opengl-es-2 -angle C:\WebKitBuildSlave\angle\trunk\lib\Release -opensource -confirm-license -nomake examples -nomake demos -nomake tests -nomake translations -qt-zlib -qt-libpng -qt-libjpeg -qt-sql-sqlite -release -prefix %CD%\qtbase That works like a developer build: qt_webkit.pri was created/overwritten. Now I built Qt5 with different prefix and everything works like charm :) Only one thing is required now before enabling WK2 build on the MSVC bot: the attached patch.
WebKit Review Bot
Comment 16 2012-10-03 02:03:33 PDT
Comment on attachment 166435 [details] patch Clearing flags on attachment: 166435 Committed r130265: <http://trac.webkit.org/changeset/130265>
WebKit Review Bot
Comment 17 2012-10-03 02:03:38 PDT
All reviewed patches have been landed. Closing bug.
Note You need to log in before you can comment on or make changes to this bug.