Premake 是用 Lua 编写的构建系统生成器,通过 premake5.lua 脚本生成 VS、Makefile 等原生项目文件;安装需下载二进制并配置 PATH,脚本定义 workspace、project、filter 等实现多配置跨平台构建。
Premake 是一个用 Lua 编写的轻量级构建系统生成器,它不直接编译代码,而是根据你写的 Lua 脚本,生成 Visual Studio、Makefile、Xcode、Ninja 等原生项目文件。对 C++ 开发者来说,它比 CMake 更简洁、更易读写,尤其适合中小型项目或想摆脱 XML/复杂语法的团队。
官方推荐方式是下载预编译二进制:
premake5(或 premake5.exe)加入系统 PATHpremake5 --version 验证是否成功
在项目根目录新建 premake5.lua,内容如下:
workspace "MyApp"
configurations { "Debug", "Release" }
platforms { "x64" }
project "MyApp"
kind "ConsoleApp"
language "C++"
cppdialect "C++17"
targetdir "bin/%{cfg.buildcfg}"
files { "**.h", "**.cpp" }
filter "configurations:Debug"
defines { "DEBUG" }
symbols "On"
filter "configurations:Release"
defines { "NDEBUG" }
optimize "On"
说明:
workspace 定义整体工作区(VS 解决方案 / Make 的顶层)project 描述一个可执行或库目标files 支持通配符,自动包含源码;也可显式列出 {"src/main.cpp", "src/utils.h"}
filter 按配置/平台切换设置,类似条件编译在终端进入项目目录,运行:
premake5 vs2025 → 生成 Visual Studio 2025 解决方案(.sln)premake5 gmake2 → 生成 GNU Makefile(Linux/macOS 默认)premake5 xcode4 → 生成 Xcode 项目make config=debug(GNU Make)刚上手容易卡在几个地方:
premake5.lua,大小写敏感;Premake 5 不兼容 Premake 4 脚本premake5.lua 所在目录的,files {"src/**.cpp"} 表示 src 子目录下所有 .cppincludedirs、libdirs、links,例如:includedirs { "deps/glad/include" }
libdirs { "deps/glad/lib" }
links { "glad" }filter "system:windows" 或 filter "system:linux"
# linux
# html
# git
# windows
# github
# app
# 工具
# mac
# ai
# c++
# macos
# 解压
# win
# lua
# include
# xml
# Filter
# ide
# visual studio
# xcode
# https
# gnu
# 是一个
# 几个
# 第一个
# 也可
# 相对于
# 第三方
# 它不
# 命令行
# 可执行
# 你写
相关文章:
制作充值网站的软件,做人力招聘为什么要自己交端口钱?
网站制作专业公司有哪些,如何制作一个企业网站,建设网站的基本步骤有哪些?
想学网站制作怎么学,建立一个网站要花费多少?
车管所网站制作流程,交警当场开简易程序处罚决定书,在交警网站查询不到怎么办?
昆明网站制作哪家好,昆明公租房申请网上登录入口?
网站制作培训多少钱一个月,网站优化seo培训课程有哪些?
,柠檬视频怎样兑换vip?
IOS倒计时设置UIButton标题title的抖动问题
免费制作海报的网站,哪位做平面的朋友告诉我用什么软件做海报比较好?ps还是cd还是ai这几个软件我都会些我是做网页的?
南阳网站制作公司推荐,小学电子版试卷去哪里找资源好?
网站制作的方法有哪些,如何将自己制作的网站发布到网上?
制作网站的网址是什么,请问后缀为.com和.com.cn还有.cn的这三种网站是分别是什么类型的网站?
如何用已有域名快速搭建网站?
如何在万网开始建站?分步指南解析
厦门模型网站设计制作公司,厦门航空飞机模型掉色怎么办?
定制建站哪家更专业可靠?推荐榜单揭晓
宠物网站制作html代码,有没有专门介绍宠物如何养的网站啊?
如何通过宝塔面板实现本地网站访问?
胶州企业网站制作公司,青岛石头网络科技有限公司怎么样?
免费制作小说封面的网站有哪些,怎么接网站批量的封面单?
如何基于PHP生成高效IDC网络公司建站源码?
电商网站制作价格怎么算,网上拍卖流程以及规则?
湖北网站制作公司有哪些,湖北清能集团官网?
如何通过西部数码建站助手快速创建专业网站?
如何高效配置IIS服务器搭建网站?
青浦网站制作公司有哪些,苹果官网发货地是哪里?
如何用免费手机建站系统零基础打造专业网站?
长沙做网站要多少钱,长沙国安网络怎么样?
招贴海报怎么做,什么是海报招贴?
如何快速辨别茅台真假?关键步骤解析
广州网站制作公司哪家好一点,广州欧莱雅百库网络科技有限公司官网?
网站制作说明怎么写,简述网页设计的流程并说明原因?
标准网站视频模板制作软件,现在有哪个网站的视频编辑素材最齐全的,背景音乐、音效等?
电商平台网站制作流程,电商网站如何制作?
临沂网站制作公司有哪些,临沂第四中学官网?
建站之星上传入口如何快速找到?
导航网站建站方案与优化指南:一站式高效搭建技巧解析
在线制作视频的网站有哪些,电脑如何制作视频短片?
已有域名如何快速搭建专属网站?
如何将凡科建站内容保存为本地文件?
如何用AWS免费套餐快速搭建高效网站?
内部网站制作流程,如何建立公司内部网站?
东莞市网站制作公司有哪些,东莞找工作用什么网站好?
php条件判断怎么写_ifelse和switchcase的使用区别【对比】
如何在Golang中指定模块版本_使用go.mod控制版本号
头像制作网站在线制作软件,dw网页背景图像怎么设置?
如何高效利用亚马逊云主机搭建企业网站?
微网站制作教程,我微信里的网站怎么才能复制到浏览器里?
广州网站建站公司选择指南:建站流程与SEO优化关键词解析
c++怎么编写动态链接库dll_c++ __declspec(dllexport)导出与调用【方法】
*请认真填写需求信息,我们会在24小时内与您取得联系。