lua 5.1.5源码
创建一个CMakeList.txt文件
cmake_minimum_required(VERSION 3.10.0) set(Proj_Name "mylua") project(${Proj_Name}) # 使用的语言标准是C89/ANSI C set(CMAKE_C_STANDARD 90) # 头文件搜索目录 include_directories("src") # 源码文件 aux_source_directory("src" Lua_Lib_Src) #遍历src文件夹的所有源码文件, 存放在变量Lua_Lib_Src上 list(REMOVE_ITEM 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 #生成动态库 set(Dll_Name "lua51") add_library(${Dll_Name} SHARED ${Lua_Lib_Src}) #生成静态库 #add_library("lua51_s" STATIC ${Lua_Lib_Src}) # 生成可执行文件 set(Lua_Exe_Name "lua") add_executable(${Lua_Exe_Name} ${Lua_Src}) #生成exe target_link_libraries(${Lua_Exe_Name} ${Dll_Name}) set(Luac_Exe_Name "luac") add_executable(${Luac_Exe_Name} ${Luac_Src}) #生成exe
用MinGW编译
1, 先用cmake-gui根据CMakeList.txt生成make文件
等同于用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博客
标签:Src,cmake,Name,lua,Lua,编译,src From: https://www.cnblogs.com/sailJs/p/18033751