Skip to content

GitLab

  • Menu
Projects Groups Snippets
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • Trac Trac
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Issues 246
    • Issues 246
    • List
    • Boards
    • Service Desk
    • Milestones
  • Monitor
    • Monitor
    • Metrics
    • Incidents
  • Analytics
    • Analytics
    • Value stream
  • Wiki
    • Wiki
  • Activity
  • Create a new issue
  • Issue Boards
Collapse sidebar
  • Legacy
  • TracTrac
  • Issues
  • #10715

Closed
Open
Created Jan 23, 2014 by Georg Koppen@gk

Cross-Compiling WebGL with mingw-w64 is broken

Enabling WebGL in the Windows .mozconfig leads to:

Blit.cpp
i686-w64-mingw32-g++ -mwindows -o Blit.o -c   -DANGLE_BUILD -DNOMINMAX -DLIBGLESV2_EXPORTS -D_CRT_SECURE_NO_DEPRECATE -D_SECURE_SCL=0 -DANGLE_DISABLE_TRACE -DANGLE_COMPILE_OPTIMIZATION_LEVEL=D3DCOMPILE_OPTIMIZATION_LEVEL1 -DCOMPILER_IMPLEMENTATION -DNO_NSPR_10_SUPPORT -I/home/ubuntu/build/tor-browser/gfx/angle/src/libGLESv2/../../include -I/home/ubuntu/build/tor-browser/gfx/angle/src/libGLESv2/../../include/KHR -I/home/ubuntu/build/tor-browser/gfx/angle/src/libGLESv2/.. -I"/include" -I/home/ubuntu/build/tor-browser/gfx/angle/src/libGLESv2 -I. -I../../../../dist/include  -I/home/ubuntu/build/tor-browser/obj-mingw/dist/include/nspr -I/home/ubuntu/build/tor-browser/obj-mingw/dist/include/nss        -Wall -Wpointer-arith -Woverloaded-virtual -Werror=return-type -Wtype-limits -Wempty-body -Wsign-compare -Wno-invalid-offsetof -Wcast-align -Wno-format -fno-strict-aliasing -mms-bitfields -mstackrealign -fno-keep-inline-dllexport -fno-rtti -ffunction-sections -fdata-sections -std=gnu++0x -pipe -DNDEBUG -DTRIMMED -g -fexceptions -O -fomit-frame-pointer     /home/ubuntu/build/tor-browser/gfx/angle/src/libGLESv2/Blit.cpp
Buffer.cpp
i686-w64-mingw32-g++ -mwindows -o Buffer.o -c   -DANGLE_BUILD -DNOMINMAX -DLIBGLESV2_EXPORTS -D_CRT_SECURE_NO_DEPRECATE -D_SECURE_SCL=0 -DANGLE_DISABLE_TRACE -DANGLE_COMPILE_OPTIMIZATION_LEVEL=D3DCOMPILE_OPTIMIZATION_LEVEL1 -DCOMPILER_IMPLEMENTATION -DNO_NSPR_10_SUPPORT -I/home/ubuntu/build/tor-browser/gfx/angle/src/libGLESv2/../../include -I/home/ubuntu/build/tor-browser/gfx/angle/src/libGLESv2/../../include/KHR -I/home/ubuntu/build/tor-browser/gfx/angle/src/libGLESv2/.. -I"/include" -I/home/ubuntu/build/tor-browser/gfx/angle/src/libGLESv2 -I. -I../../../../dist/include  -I/home/ubuntu/build/tor-browser/obj-mingw/dist/include/nspr -I/home/ubuntu/build/tor-browser/obj-mingw/dist/include/nss        -Wall -Wpointer-arith -Woverloaded-virtual -Werror=return-type -Wtype-limits -Wempty-body -Wsign-compare -Wno-invalid-offsetof -Wcast-align -Wno-format -fno-strict-aliasing -mms-bitfields -mstackrealign -fno-keep-inline-dllexport -fno-rtti -ffunction-sections -fdata-sections -std=gnu++0x -pipe -DNDEBUG -DTRIMMED -g -fexceptions -O -fomit-frame-pointer     /home/ubuntu/build/tor-browser/gfx/angle/src/libGLESv2/Buffer.cpp
BuiltInFunctionEmulator.cpp
i686-w64-mingw32-g++ -mwindows -o BuiltInFunctionEmulator.o -c   -DANGLE_BUILD -DNOMINMAX -DLIBGLESV2_EXPORTS -D_CRT_SECURE_NO_DEPRECATE -D_SECURE_SCL=0 -DANGLE_DISABLE_TRACE -DANGLE_COMPILE_OPTIMIZATION_LEVEL=D3DCOMPILE_OPTIMIZATION_LEVEL1 -DCOMPILER_IMPLEMENTATION -DNO_NSPR_10_SUPPORT -I/home/ubuntu/build/tor-browser/gfx/angle/src/libGLESv2/../../include -I/home/ubuntu/build/tor-browser/gfx/angle/src/libGLESv2/../../include/KHR -I/home/ubuntu/build/tor-browser/gfx/angle/src/libGLESv2/.. -I"/include" -I/home/ubuntu/build/tor-browser/gfx/angle/src/libGLESv2 -I. -I../../../../dist/include  -I/home/ubuntu/build/tor-browser/obj-mingw/dist/include/nspr -I/home/ubuntu/build/tor-browser/obj-mingw/dist/include/nss        -Wall -Wpointer-arith -Woverloaded-virtual -Werror=return-type -Wtype-limits -Wempty-body -Wsign-compare -Wno-invalid-offsetof -Wcast-align -Wno-format -fno-strict-aliasing -mms-bitfields -mstackrealign -fno-keep-inline-dllexport -fno-rtti -ffunction-sections -fdata-sections -std=gnu++0x -pipe -DNDEBUG -DTRIMMED -g -fexceptions -O -fomit-frame-pointer     /home/ubuntu/build/tor-browser/gfx/angle/src/compiler/BuiltInFunctionEmulator.cpp
CodeGenHLSL.cpp
i686-w64-mingw32-g++ -mwindows -o CodeGenHLSL.o -c   -DANGLE_BUILD -DNOMINMAX -DLIBGLESV2_EXPORTS -D_CRT_SECURE_NO_DEPRECATE -D_SECURE_SCL=0 -DANGLE_DISABLE_TRACE -DANGLE_COMPILE_OPTIMIZATION_LEVEL=D3DCOMPILE_OPTIMIZATION_LEVEL1 -DCOMPILER_IMPLEMENTATION -DNO_NSPR_10_SUPPORT -I/home/ubuntu/build/tor-browser/gfx/angle/src/libGLESv2/../../include -I/home/ubuntu/build/tor-browser/gfx/angle/src/libGLESv2/../../include/KHR -I/home/ubuntu/build/tor-browser/gfx/angle/src/libGLESv2/.. -I"/include" -I/home/ubuntu/build/tor-browser/gfx/angle/src/libGLESv2 -I. -I../../../../dist/include  -I/home/ubuntu/build/tor-browser/obj-mingw/dist/include/nspr -I/home/ubuntu/build/tor-browser/obj-mingw/dist/include/nss        -Wall -Wpointer-arith -Woverloaded-virtual -Werror=return-type -Wtype-limits -Wempty-body -Wsign-compare -Wno-invalid-offsetof -Wcast-align -Wno-format -fno-strict-aliasing -mms-bitfields -mstackrealign -fno-keep-inline-dllexport -fno-rtti -ffunction-sections -fdata-sections -std=gnu++0x -pipe -DNDEBUG -DTRIMMED -g -fexceptions -O -fomit-frame-pointer     /home/ubuntu/build/tor-browser/gfx/angle/src/compiler/CodeGenHLSL.cpp
Compiler.cpp
i686-w64-mingw32-g++ -mwindows -o Compiler.o -c   -DANGLE_BUILD -DNOMINMAX -DLIBGLESV2_EXPORTS -D_CRT_SECURE_NO_DEPRECATE -D_SECURE_SCL=0 -DANGLE_DISABLE_TRACE -DANGLE_COMPILE_OPTIMIZATION_LEVEL=D3DCOMPILE_OPTIMIZATION_LEVEL1 -DCOMPILER_IMPLEMENTATION -DNO_NSPR_10_SUPPORT -I/home/ubuntu/build/tor-browser/gfx/angle/src/libGLESv2/../../include -I/home/ubuntu/build/tor-browser/gfx/angle/src/libGLESv2/../../include/KHR -I/home/ubuntu/build/tor-browser/gfx/angle/src/libGLESv2/.. -I"/include" -I/home/ubuntu/build/tor-browser/gfx/angle/src/libGLESv2 -I. -I../../../../dist/include  -I/home/ubuntu/build/tor-browser/obj-mingw/dist/include/nspr -I/home/ubuntu/build/tor-browser/obj-mingw/dist/include/nss        -Wall -Wpointer-arith -Woverloaded-virtual -Werror=return-type -Wtype-limits -Wempty-body -Wsign-compare -Wno-invalid-offsetof -Wcast-align -Wno-format -fno-strict-aliasing -mms-bitfields -mstackrealign -fno-keep-inline-dllexport -fno-rtti -ffunction-sections -fdata-sections -std=gnu++0x -pipe -DNDEBUG -DTRIMMED -g -fexceptions -O -fomit-frame-pointer     /home/ubuntu/build/tor-browser/gfx/angle/src/compiler/Compiler.cpp
Context.cpp
i686-w64-mingw32-g++ -mwindows -o Context.o -c   -DANGLE_BUILD -DNOMINMAX -DLIBGLESV2_EXPORTS -D_CRT_SECURE_NO_DEPRECATE -D_SECURE_SCL=0 -DANGLE_DISABLE_TRACE -DANGLE_COMPILE_OPTIMIZATION_LEVEL=D3DCOMPILE_OPTIMIZATION_LEVEL1 -DCOMPILER_IMPLEMENTATION -DNO_NSPR_10_SUPPORT -I/home/ubuntu/build/tor-browser/gfx/angle/src/libGLESv2/../../include -I/home/ubuntu/build/tor-browser/gfx/angle/src/libGLESv2/../../include/KHR -I/home/ubuntu/build/tor-browser/gfx/angle/src/libGLESv2/.. -I"/include" -I/home/ubuntu/build/tor-browser/gfx/angle/src/libGLESv2 -I. -I../../../../dist/include  -I/home/ubuntu/build/tor-browser/obj-mingw/dist/include/nspr -I/home/ubuntu/build/tor-browser/obj-mingw/dist/include/nss        -Wall -Wpointer-arith -Woverloaded-virtual -Werror=return-type -Wtype-limits -Wempty-body -Wsign-compare -Wno-invalid-offsetof -Wcast-align -Wno-format -fno-strict-aliasing -mms-bitfields -mstackrealign -fno-keep-inline-dllexport -fno-rtti -ffunction-sections -fdata-sections -std=gnu++0x -pipe -DNDEBUG -DTRIMMED -g -fexceptions -O -fomit-frame-pointer     /home/ubuntu/build/tor-browser/gfx/angle/src/libGLESv2/Context.cpp
D3DConstantTable.cpp
In file included from /home/ubuntu/build/tor-browser/gfx/angle/src/libGLESv2/../libEGL/Display.h:23:0,
                 from /home/ubuntu/build/tor-browser/gfx/angle/src/libGLESv2/../libGLESv2/main.h:17,
                 from /home/ubuntu/build/tor-browser/gfx/angle/src/libGLESv2/Buffer.cpp:13:
/home/ubuntu/build/tor-browser/gfx/angle/src/libGLESv2/../libEGL/Config.h:97:5: error: a class-key must be used when declaring a friend
/home/ubuntu/build/tor-browser/gfx/angle/src/libGLESv2/../libEGL/Config.h:97:5: error: friend declaration does not name a class or function
make[7]: *** [Buffer.o] Error 1
make[7]: *** Waiting for unfinished jobs....
In file included from /home/ubuntu/build/tor-browser/gfx/angle/src/libGLESv2/../libEGL/Display.h:23:0,
                 from /home/ubuntu/build/tor-browser/gfx/angle/src/libGLESv2/../libGLESv2/Blit.h:21,
                 from /home/ubuntu/build/tor-browser/gfx/angle/src/libGLESv2/Blit.cpp:9:
/home/ubuntu/build/tor-browser/gfx/angle/src/libGLESv2/../libEGL/Config.h:97:5: error: a class-key must be used when declaring a friend
/home/ubuntu/build/tor-browser/gfx/angle/src/libGLESv2/../libEGL/Config.h:97:5: error: friend declaration does not name a class or function
make[7]: *** [Blit.o] Error 1
In file included from /home/ubuntu/build/tor-browser/gfx/angle/src/libGLESv2/../libEGL/Display.h:23:0,
                 from /home/ubuntu/build/tor-browser/gfx/angle/src/libGLESv2/Context.cpp:15:
/home/ubuntu/build/tor-browser/gfx/angle/src/libGLESv2/../libEGL/Config.h:97:5: error: a class-key must be used when declaring a friend
/home/ubuntu/build/tor-browser/gfx/angle/src/libGLESv2/../libEGL/Config.h:97:5: error: friend declaration does not name a class or function
make[7]: *** [Context.o] Error 1
make[7]: Leaving directory `/home/ubuntu/build/tor-browser/obj-mingw/gfx/angle/src/libGLESv2'
make[6]: *** [libs] Error 2
make[6]: Leaving directory `/home/ubuntu/build/tor-browser/obj-mingw/gfx/angle'
make[5]: *** [libs] Error 2
make[5]: Leaving directory `/home/ubuntu/build/tor-browser/obj-mingw/gfx'
make[4]: *** [libs_tier_platform] Error 2
make[4]: Leaving directory `/home/ubuntu/build/tor-browser/obj-mingw'
make[3]: *** [tier_platform] Error 2
make[3]: Leaving directory `/home/ubuntu/build/tor-browser/obj-mingw'
make[2]: *** [default] Error 2
make[2]: Leaving directory `/home/ubuntu/build/tor-browser/obj-mingw'
make[1]: *** [realbuild] Error 2
make[1]: Leaving directory `/home/ubuntu/build/tor-browser'
make: *** [build] Error 2
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information
Assignee
Assign to
Time tracking