Hello,
I want to build QtWebKit with WebGL support under Windows XP, and use
the following command:
----------
perl Tools\Scripts\build-webkit --qt --3d-canvas --release
----------
When making QtWebKit4.dll, it tells that there exists a lot of
undefined references, and all of them are OpenGL functions. (i.e.
glDeleteTextures@8)
I've investigated the building process, and the strange thing is, the
command line making QtWebKit4.dll really contains an option:
-lopengl32, and libopengl32.a also contains the required symbols.
(i.e. glDeleteTextures@8)
Did I miss something?
----------
OS: Windows XP
Qt SDK version: 4.7.1
WebKit trunk revision: 81886
Bug 56723 has been patched: https://bugs.webkit.org/show_bug.cgi?id=56723
Use MinGW to build QtWebKit (MinGW is embedded in Qt SDK)
Command line to build QtWebKit: perl Tools\Scripts\build-webkit --qt
--3d-canvas --release
The command for building QtWebKit4.dll:
g++ -enable-stdcall-fixup -Wl,-enable-auto-import
-Wl,-enable-runtime-pseudo-reloc -Wl,-s -mthreads -Wl -shared
-Wl,--out-implib,e:\work\src.QtWebKit.Windows.r81886-WebGL\WebKitBuild\Release\lib\libQtWebKit4.a
-o ..\..\lib\QtWebKit4.dll object_script.QtWebKit.Release
-L"..\..\WebCore\release" -L"..\..\JavaScriptCore\release"
-L"e:\work\Qt\2010.05\qt\lib" -lglu32 -lopengl32 -lgdi32 -luser32
obj\release\QtWebKit_resource_res.o -lwebcore -ljscore -ladvapi32
-lgdi32 -lshell32 -lshlwapi -luser32 -lversion -lphonon4 -lgdi32
-lole32 -luser32 -lwinmm -lQtXmlPatterns4 -lQtOpenGL4 -lQtGui4
-lQtNetwork4 -lQtCore4
g++ -enable-stdcall-fixup -Wl,-enable-auto-import
-Wl,-enable-runtime-pseudo-reloc -Wl,-s -mthreads -Wl -shared
-Wl,--out-implib,e:\work\src.QtWebKit.Windows.r81886-WebGL\WebKitBuild\Release\lib\libQtWebKit4.a
-o ..\..\lib\QtWebKit4.dll object_script.QtWebKit.Release
-L"..\..\WebCore\release" -L"..\..\JavaScriptCore\release"
-L"e:\work\Qt\2010.05\qt\lib" -lglu32 -lopengl32 -lgdi32 -luser32
obj\release\QtWebKit_resource_res.o -lwebcore -ljscore -ladvapi32 -lgdi32
-lshell32 -lshlwapi -luser32 -lversion -lphonon4 -lgdi32 -lole32 -luser32
-lwinmm -lQtXmlPatterns4 -lQtOpenGL4 -lQtGui4 -lQtNetwork4 -lQtCore4
Creating library file:
e:\work\src.QtWebKit.Windows.r81886-WebGL\WebKitBuild\Release\lib\libQtWebKit4.a
e:/work/qt/2010.05/mingw/bin/../lib/gcc/mingw32/4.4.0/../../../../mingw32/bin/ld.exe:
<unknown-file>:0: syntax error
Warning: .drectve `-export:T.5600 ' unrecognized
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x190a):
undefined reference to `glDeleteTextures@8'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x1945):
undefined reference to `glGenTextures@8'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x19ae):
undefined reference to `glTexSubImage2D@36'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x1a12):
undefined reference to `glTexImage2D@36'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x1a50):
undefined reference to `glGetTexParameteriv@12'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x1a8c):
undefined reference to `glGetTexParameterfv@12'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x1ac1):
undefined reference to `glGetIntegerv@8'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x1af5):
undefined reference to `glGetFloatv@8'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x1b29):
undefined reference to `glGetBooleanv@8'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x1b6b):
undefined reference to `glViewport@16'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x1ba4):
undefined reference to `glTexParameteri@12'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x1be0):
undefined reference to `glTexParameterf@12'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x1c1c):
undefined reference to `glStencilOp@12'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x1c4a):
undefined reference to `glStencilMask@4'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x1c84):
undefined reference to `glStencilFunc@12'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x1cc7):
undefined reference to `glScissor@16'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x1d34):
undefined reference to `glReadPixels@28'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x1d69):
undefined reference to `glPolygonOffset@8'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x1d9d):
undefined reference to `glPixelStorei@8'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x1dca):
undefined reference to `glLineWidth@4'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x1e05):
undefined reference to `glIsTexture@4'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x1e32):
undefined reference to `glIsEnabled@4'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x1e65):
undefined reference to `glHint@8'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x1e96):
undefined reference to `glGetString@4'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x1ed2):
undefined reference to `glFrontFace@4'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x1f46):
undefined reference to `glEnable@4'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x1f87):
undefined reference to `glDrawElements@16'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x1fc0):
undefined reference to `glDrawArrays@12'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x1fee):
undefined reference to `glDisable@4'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x2021):
undefined reference to `glDepthRange@16'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x2052):
undefined reference to `glDepthMask@4'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x207e):
undefined reference to `glDepthFunc@4'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x20aa):
undefined reference to `glCullFace@4'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x2107):
undefined reference to `glCopyTexSubImage2D@32'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x2163):
undefined reference to `glCopyTexImage2D@32'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x21bc):
undefined reference to `glColorMask@16'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x21ee):
undefined reference to `glClearStencil@4'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x221a):
undefined reference to `glClearDepth@8'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x2246):
undefined reference to `glClear@4'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x2287):
undefined reference to `glClearColor@16'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x22b9):
undefined reference to `glBlendFunc@8'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x22ed):
undefined reference to `glBindTexture@8'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x238e):
undefined reference to `glBindTexture@8'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x23d5):
undefined reference to `glTexImage2D@36'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x23ec):
undefined reference to `glBindTexture@8'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x24d1):
undefined reference to `glClear@4'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x26de):
undefined reference to `glReadPixels@28'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x55be):
undefined reference to `glGenTextures@8'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x55d7):
undefined reference to `glBindTexture@8'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x55f6):
undefined reference to `glTexParameterf@12'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x5615):
undefined reference to `glTexParameterf@12'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x5634):
undefined reference to `glTexParameteri@12'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x5653):
undefined reference to `glTexParameteri@12'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x56a2):
undefined reference to `glTexImage2D@36'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x56b9):
undefined reference to `glBindTexture@8'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x57db):
undefined reference to `glClearColor@16'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x8342):
undefined reference to `glGenTextures@8'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x835b):
undefined reference to `glBindTexture@8'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x837a):
undefined reference to `glTexParameterf@12'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x8399):
undefined reference to `glTexParameterf@12'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x83b8):
undefined reference to `glTexParameteri@12'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x83d7):
undefined reference to `glTexParameteri@12'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x8426):
undefined reference to `glTexImage2D@36'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x843d):
undefined reference to `glBindTexture@8'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x855f):
undefined reference to `glClearColor@16'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x1ef9):
undefined reference to `glFlush@0'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x1f1d):
undefined reference to `glFinish@0'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x24de):
undefined reference to `glFlush@0'
..\..\WebCore\release/libwebcore.a(GraphicsContext3DQt.o):GraphicsContext3DQt.cpp:(.text+0x2aff):
undefined reference to `glGetError@0'
collect2: ld returned 1 exit status
_______________________________________________
webkit-qt mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-qt