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

如何结合Premake5与MinGW?编译HelloWorld遇执行错误求助

解决方案

问题根源

错误提示process_begin: CreateProcess(NULL, cc ...) failed表明系统无法找到cc命令。MinGW环境下的C编译器是gcc,而Premake默认生成的Makefile会使用cc作为编译器调用命令,导致找不到可执行程序。

修复步骤

  1. 修改premake5.lua配置文件
    在workspace配置块中添加toolset "gcc",强制指定使用GCC工具链:

    workspace "HelloWorld"
       configurations { "Debug", "Release" }
       toolset "gcc"  -- 指定GCC编译器,适配MinGW环境
    
    project "HelloWorld"
       kind "ConsoleApp"
       language "C"
       targetdir "bin/%{cfg.buildcfg}"
    
        files {"main.c"}
    
       filter "configurations:Debug"
          defines { "DEBUG" }
          symbols "On"
    
       filter "configurations:Release"
          defines { "NDEBUG" }
          optimize "On"
    
  2. 重新生成Makefile
    执行命令:

    premake5 gmake2
    
  3. 执行编译
    运行MinGW的编译命令:

    mingw32-make
    
  4. 验证环境配置(可选)
    确保MinGW的bin目录已添加到系统PATH中(例如C:\MinGW\bin),在终端输入gcc --version能正常输出版本信息,说明环境配置正确。

关于.d文件的说明

.d文件是编译生成的依赖文件,会存放在obj目录下(而非bin目录)。当前编译第一步就失败,所以未生成该文件,解决编译问题后会自动生成。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.07 08:55:21