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

使用CMake构建Glad库时遭遇Python依赖模块缺失问题求助

构建Glad子模块时的Python相关问题

我正在开发一款3D引擎,打算将glad仓库作为子模块加入项目,使用CMake作为主要构建工具,但构建Glad库时一直碰到Python相关的问题。我特意创建了一个单独的测试项目,错误依然存在。我的需求是构建完成后自动生成glad.h、glad.c和glad.lib,且我对Python代码不太熟悉。

相关文件信息

CMakeLists.txt 代码

# 示例CMake配置(用户需替换为实际代码)
cmake_minimum_required(VERSION 3.10)
project(3DEngineTest)

add_subdirectory(thirdparty/glad)

# 测试目标
add_executable(GladTest main.cpp)
target_link_libraries(GladTest PRIVATE glad)

构建输出错误日志(示例)

-- Found Python: /usr/bin/python2.7 (found unsuitable version "2.7.18", minimum required is "3.6") 
CMake Error at thirdparty/glad/CMakeLists.txt:42 (message):
  Python version 3.x required to build glad

已安装Python模块列表

Package    Version
---------- -------
pip        23.3.1
setuptools 68.2.2
wheel      0.41.2

解决方案

1. 强制CMake使用Python 3

Glad构建依赖Python 3.6+,直接在CMake中指定Python路径:
在项目根CMakeLists.txt开头添加:

# Windows示例
set(Python_EXECUTABLE "C:/Python311/python.exe")
# Linux/macOS示例
set(Python_EXECUTABLE "/usr/bin/python3")

或者通过cmake命令行参数传递:

# Windows
cmake .. -G "Visual Studio 17 2022" -DPython_EXECUTABLE=C:/Python311/python.exe
# Linux/macOS
cmake .. -DPython_EXECUTABLE=/usr/bin/python3

2. 修复子模块完整性

确保glad子模块克隆完整,执行:

git submodule update --init --recursive

3. 手动生成Glad文件(跳过CMake自动生成)

如果自动生成始终失败,手动调用Glad的Python脚本生成文件:

  1. 进入glad子模块目录,运行:
python3 -m glad --generator=c --api="gl=4.5" --profile=core --out-path=generated
  1. 在CMake中直接使用生成的文件:
add_library(glad STATIC thirdparty/glad/generated/src/glad.c)
target_include_directories(glad PUBLIC thirdparty/glad/generated/include)

4. 验证Python环境

确认系统中Python 3可用:

python3 --version

输出需为3.6及以上版本,若未安装则先安装对应版本的Python。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.01 22:50:17