cmake编译lua
lua 5.1.5源码
创建一个CMakeList.txt文件
cmake_minimum_required(VERSION 3.10.0) set(Proj_Name "mylua") project(${Proj_Name}) set(CMAKE_C_STANDARD 90) # 使用C98/ANSI C include_directories("src") # 设置头文件搜索目录 aux_source_directory("src" Lua_Lib_Src) #遍历src目录的源码文件, 存放在变量${Lua_Lib_Src}上 list(REMOVE_ITEM Lua_Lib_Src "src/lua.c") #删掉${Lua_Lib_Src}中的src/lua.c条目 file(GLOB Lua_Src "src/lua.c") aux_source_directory("src" Luac_Src) #遍历src目录的源码文件, 存放在变量${Luac_Src}上 list(REMOVE_ITEM Luac_Src "src/lua.c") add_definitions(-DLUA_BUILD_AS_DLL) #定义宏LUA_BUILD_AS_DLL add_library("lua51" SHARED ${Lua_Lib_Src}) # 源码编译生成动态库 #add_library("lua51_s" STATIC ${Lua_Lib_Src}) # 源码编译生成静态库 add_executable("lua" ${Lua_Src}) # 生成exe文件
target_link_libraries("lua" "lua51") # 目标lua的库文件搜索路径
add_executable("luac" ${Luac_Src}) # 生成可执行文件
用MinGW编译
1, 先用cmake-gui根据CMakeList.txt生成make文件(Configure设置为MinGW Makefiles,点击Generate)
等同于用cmake命令cmake -S . -B build -G "MinGW Makefiles"
2, 用MinGW根据生成的make文件编译代码
命令行 -> 进入build文件夹 -> 输入mingw32-make, 就会根据make文件开始编译了
3, 编译后生成的文件
4, 如果之前勾了GNUtoMS,将额外生成Windows平台上的库文件(即:.lib文件)
用Visual Studio编译
1, 先用cmake-gui根据CMakeList.txt生成.vcxproj和.sln文件
2, 双击生成的sln文件,打开Visual Studio,然后生成解决方案
3, 编译后生成的文件
参考
Windows下lua的编译与环境搭建_lua windows-CSDN博客
c++ 编译添加dll_VS2019编译lua源码-CSDN博客
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验
· 百万级群聊的设计实践
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
· 永远不要相信用户的输入:从 SQL 注入攻防看输入验证的重要性