Skip to content

Instantly share code, notes, and snippets.

@skyone-wzw
Last active December 22, 2021 05:19
Show Gist options
  • Save skyone-wzw/b40164a62e58492425a40c990c93e440 to your computer and use it in GitHub Desktop.
Save skyone-wzw/b40164a62e58492425a40c990c93e440 to your computer and use it in GitHub Desktop.
Use CMake to build lua
project(lua C)
cmake_minimum_required(VERSION 3.16)
set(src_code
src/lapi.c src/lcode.c src/lctype.c src/ldebug.c src/ldo.c src/ldump.c src/lfunc.c src/lgc.c src/llex.c
src/lmem.c src/lobject.c src/lopcodes.c src/lparser.c src/lstate.c src/lstring.c src/ltable.c src/ltm.c
src/lundump.c src/lvm.c src/lzio.c)
set(src_lib
src/lauxlib.c src/lbaselib.c src/lcorolib.c src/ldblib.c src/liolib.c src/lmathlib.c src/loadlib.c
src/loslib.c src/lstrlib.c src/ltablib.c src/lutf8lib.c src/linit.c)
set(src_exec src/lua.c)
set(src_comp src/luac.c)
add_library(liblua_static STATIC ${src_code} ${src_lib})
set_target_properties(liblua_static PROPERTIES OUTPUT_NAME lua)
add_library(liblua_share SHARED ${src_code} ${src_lib})
set_target_properties(liblua_share PROPERTIES OUTPUT_NAME lua)
add_executable(lua ${src_code} ${src_lib} ${src_exec})
set_target_properties(lua PROPERTIES OUTPUT_NAME lua)
add_executable(luac ${src_code} ${src_lib} ${src_comp})
set_target_properties(luac PROPERTIES OUTPUT_NAME luac)
@skyone-wzw
Copy link
Author

skyone-wzw commented Dec 22, 2021

Use CMake to build lua. Contains lua dynamic link library, lua static link library, lua interpreter, lua compiler.

  1. Download lua source code from here. Here, I use version 5.4.3.
cd ~
wget https://www.lua.org/ftp/lua-5.4.3.tar.gz
  1. Unzip the file you downloaded and copy the src directory to an empty folder.
tar -zxvf lua-5.4.3.tar.gz
mkdir build-lua
cp -p lua-5.4.3/src build-lua
cd build-lua
  1. Download this file and start building.
wget \
  https://gist.github.com/skyone-wzw/b40164a62e58492425a40c990c93e440/raw/d8d0bf768fc8b5022b455ec4f4ba801242b8b673/CMakeLists.txt
mkdir build && cd build
cmake -DCMAKE_BUILD_TYPE=Release  ..
make

@skyone-wzw
Copy link
Author

skyone-wzw commented Dec 22, 2021

使用CMake构建lua。包含lua动态链接库、lua静态链接库、lua解释器、lua编译器。

  1. 这里下载 lua 源码。 这里我使用 5.4.3 版。
cd ~
wget https://www.lua.org/ftp/lua-5.4.3.tar.gz
  1. 解压下载好的文件并将其中 src 目录复制到一个空文件夹中。
tar -zxvf lua-5.4.3.tar.gz
mkdir build-lua
cp -p lua-5.4.3/src build-lua
cd build-lua
  1. 下载此文件并开始构建。
wget \
  https://gist.github.com/skyone-wzw/b40164a62e58492425a40c990c93e440/raw/d8d0bf768fc8b5022b455ec4f4ba801242b8b673/CMakeLists.txt
mkdir build && cd build
cmake -DCMAKE_BUILD_TYPE=Release  ..
make

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment