1. 下载lua https://www.lua.org/ftp/lua-5.4.3.tar.gz
wget https://www.lua.org/ftp/lua-5.4.3.tar.gz
2.tar -zxvf lua-5.4.3.tar.gz
3. cd lua-5.4.3/src
vi MakeFIle
4. 修改 CFLAGS= -O2 -Wall -DLUA_COMPAT_ALL $(SYSCFLAGS) $(MYCFLAGS) 改为
CFLAGS= -O2 -Wall -DLUA_COMPAT_ALL $(SYSCFLAGS) $(MYCFLAGS) -fPIC 后面加的-fPIC表示要编译位置无关代码
5. 在 LUA_A=liblua.a 下面添加一行 LUA_SO=liblua.so 表新建一个目标,要编译出lua动态库,编译出来的动态库文件名字为liblua.so
6. 修改 ALL_T= $(LUA_A) $(LUA_T) $(LUAC_T) 改为 ALL_T= $(LUA_A) $(LUA_T) $(LUAC_T) $(LUA_SO) 表示添加上刚才的目标
7. 在 $(LUA_A): $(BASE_O)
$(AR) $@ $?
$(RANLIB) $@
下面添加
$(LUA_SO): $(CORE_O) $(LIB_O)
$(CC) -o $@ -shared $? -ldl -lm 注意:本行前面的空格其实是一个tab
8. 保存该makefile文件,然后执行命令 cd .. 用来回到上层目录,即回到目录/home/lua-5.2.0
9. 执行命令 vim Makefile 打开make文件
10. 修改 TO_LIB= liblua.a 改为 TO_LIB= liblua.a liblua.so 表同时编译静态库和动态库
11. 保存该makefile文件,然后执行命令make linux 后面的linux表当前平台
12. make install
--------------------------------------------------致命错误:lua.h:没有那个文件或目录---------------------------------------------------------------------------------------
1. wget https://www.lua.org/ftp/lua-5.4.3.tar.gz
- 解压文件
- 进入解压文件
- 执行 make linux
- 执行 sudo make install