Bug 178405 - 'EGL/egl.h' file not found
Summary: 'EGL/egl.h' file not found
Status: REOPENED
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebKitGTK (show other bugs)
Version: WebKit Local Build
Hardware: Mac macOS 10.13
: P2 Normal
Assignee: Nobody
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2017-10-17 13:54 PDT by s172262
Modified: 2017-10-17 16:15 PDT (History)
2 users (show)

See Also:


Attachments
'EGL/egl.h' file not found (15.53 KB, text/plain)
2017-10-17 13:54 PDT, s172262
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description s172262 2017-10-17 13:54:55 PDT
Created attachment 324053 [details]
'EGL/egl.h' file not found

I tried to build WebKitGtk+  ver.2.18.0 with cairo.

>/tmp/webkitgtk+-20171017-48306-bvnuze/Source/WebCore/platform/graphics/egl/GLContextEGL.cpp:30:10: fatal error: 'EGL/egl.h' file not found
>#include <EGL/egl.h>
>         ^~~~~~~~~~~
>1 error generated.
>make[2]: *** [Source/WebCore/CMakeFiles/WebCore.dir/platform/graphics/egl/GLContextEGL.cpp.o] Error 1
>make[1]: *** [Source/WebCore/CMakeFiles/WebCore.dir/all] Error 2
>make: *** [all] Error 2

Please add  include-path for "EGL/egl.h".
Comment 1 Carlos Alberto Lopez Perez 2017-10-17 14:49:28 PDT
OpenGL/EGL headers are a requisite for building WebKitGTK+ unless you configure it with the CMake option -DENABLE_OPENGL=OFF

On a GNU/Linux Debian/Ubuntu system you can do that with: sudo apt-get isntall  libegl1-mesa-dev

So, I'm closing this bug as invalid.

Please re-open if the problem persist after installing the required headers.
Comment 2 Carlos Alberto Lopez Perez 2017-10-17 14:50:12 PDT
(In reply to Carlos Alberto Lopez Perez from comment #1)
> On a GNU/Linux Debian/Ubuntu system you can do that with: sudo apt-get
> isntall  libegl1-mesa-dev

should be: sudo apt-get install libegl1-mesa-dev
Comment 3 s172262 2017-10-17 15:02:34 PDT
Are you joking?
The include-path for "EGL/egl.h" is "Source/ThirdParty/ANGLE/include/EGL/egl.h".
Comment 4 s172262 2017-10-17 15:08:12 PDT
Are you joking?
The include-path for "EGL/egl.h" is "Source/ThirdParty/ANGLE/include/EGL/egl.h".
Comment 5 Carlos Alberto Lopez Perez 2017-10-17 15:35:28 PDT
(In reply to s172262 from comment #4)
> Are you joking?
> The include-path for "EGL/egl.h" is
> "Source/ThirdParty/ANGLE/include/EGL/egl.h".

I'm not joking.

That are the ANGLE headers and they are not used as standard headers for building WebKit (that's on purpose). That headers are _only_ used for building the ANGLESupport library (which is needed for WebGL support on WebCore)

For building WebKitGTK+ with proper 3D/OpenGL support you need your system system OpenGL/EGL headers correctly installed. That's a fact.
Comment 6 s172262 2017-10-17 15:47:53 PDT
(In reply to Carlos Alberto Lopez Perez from comment #5)
> (In reply to s172262 from comment #4)
> > Are you joking?
> > The include-path for "EGL/egl.h" is
> > "Source/ThirdParty/ANGLE/include/EGL/egl.h".
> 
> I'm not joking.
> 
> That are the ANGLE headers and they are not used as standard headers for
> building WebKit (that's on purpose). That headers are _only_ used for
> building the ANGLESupport library (which is needed for WebGL support on
> WebCore)
> 
> For building WebKitGTK+ with proper 3D/OpenGL support you need your system
> system OpenGL/EGL headers correctly installed. That's a fact.

You are still joking.
See attachment file.
There is  include-path of "Source/ThirdParty/ANGLE".
Change this to  "Source/ThirdParty/ANGLE/include/".
Comment 7 Carlos Alberto Lopez Perez 2017-10-17 16:07:59 PDT
(In reply to s172262 from comment #6)
> (In reply to Carlos Alberto Lopez Perez from comment #5)
> > (In reply to s172262 from comment #4)
> > > Are you joking?
> > > The include-path for "EGL/egl.h" is
> > > "Source/ThirdParty/ANGLE/include/EGL/egl.h".
> > 
> > I'm not joking.
> > 
> > That are the ANGLE headers and they are not used as standard headers for
> > building WebKit (that's on purpose). That headers are _only_ used for
> > building the ANGLESupport library (which is needed for WebGL support on
> > WebCore)
> > 
> > For building WebKitGTK+ with proper 3D/OpenGL support you need your system
> > system OpenGL/EGL headers correctly installed. That's a fact.
> 
> You are still joking.
> See attachment file.
> There is  include-path of "Source/ThirdParty/ANGLE".
> Change this to  "Source/ThirdParty/ANGLE/include/".

Excluding Source/ThirdParty/ANGLE/include/ from the default include path is done on purpose.

We don't want to build or link against the ANGLE library for OpenGL support as this library doesn't actually provide what we need for 3D graphics on the system. ANGLE its just a translation shader library for WebGL.
Comment 8 s172262 2017-10-17 16:15:59 PDT
> We don't want to build or link against the ANGLE library for OpenGL support
> as this library doesn't actually provide what we need for 3D graphics on the
> system. ANGLE its just a translation shader library for WebGL.

If you say truth, you should remove the include-path of "Source/ThirdParty/ANGLE"  and "Source/ThirdParty/ANGLE/include/KHR" here.