You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu20.04安装libglew-dev后缺失eglew.h头文件问题咨询

Ubuntu 20.04 编译ffmpeg vaapi gl demo缺失eglew.h解决方案

问题原因

Ubuntu 20.04官方源提供的libglew-dev(对应GLEW 2.1.0版本)在打包编译时默认未开启EGL平台绑定支持,因此安装后不会在/usr/include/GL路径下放置eglew.h头文件,无论安装多少其他关联的GL/EGL开发包都无法补全这个文件。


可选解决方法

方法1:自行编译安装带EGL支持的GLEW(不使用项目内置源码)

该方法会将带EGL支持的GLEW安装到系统全局目录,后续其他项目也可以直接复用:

  • 先卸载原有系统源安装的无EGL支持的GLEW:
    sudo apt remove libglew-dev libglew2.1
    
  • 安装编译所需的基础依赖:
    sudo apt install build-essential libegl1-mesa-dev libgl1-mesa-dev cmake
    
  • 下载GLEW 2.1.0版本源码,编译时指定开启EGL支持后安装到系统:
    # 进入你存放源码的目录,解压下载好的GLEW 2.1.0版本源码包
    cd glew
    make SYSTEM=linux-egl
    sudo make install
    sudo ldconfig
    
  • 安装完成后eglew.h会默认部署到/usr/include/GL目录,回到demo项目重新执行编译流程即可正常识别头文件。

方法2:直接使用项目内置的GLEW源码编译

该方法不需要修改系统全局依赖,不会和系统已安装的GLEW版本产生冲突,也是项目作者默认适配的方式:

  • 打开项目根目录的CMakeLists.txt配置文件,注释掉find_package(GLEW REQUIRED)这类查找系统GLEW的配置行。
  • 找到内置GLEW的编译开关(一般为USE_BUILTIN_GLEW相关的option配置),将其值设置为ON,开启内置源码编译逻辑。
  • 按常规CMake流程创建build目录执行编译即可,构建过程会自动编译内置的GLEW源码生成带EGL支持的静态库,链接到目标程序中,不会出现头文件缺失报错。
  • 该方法的优势是依赖版本和作者开发测试时的版本完全一致,基本不会出现版本兼容导致的奇怪问题,适合不想改动系统全局环境的场景。

内容的提问来源于stack exchange,提问作者Berni

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.26 13:12:18