luasocket 源码:
https://github.com/diegonehab/luasocket
lua5.3源码
http://www.lua.org/ftp/lua-5.3.3.tar.gz
环境:
windows 10 64位
下载安装mingw,选择安装:
Mingw Base System
mingw32-gcc/bin
MSYS Base System
msys-bash/bin // 不安装这个会出现make的时候提示/bin/sh找不到的错误
msys-make/bin
由于目前mingw自带的gcc版本比较低,目前为6.3.0,而使用这个版本编译luasocket的时候,会报错。
https://stackoverflow.com/questions/48812849/luasocket-error-not-enough-memory-declaration
这个老哥最后的解决方法是使用mingw-w64来代替mingw。但是我这边替换了之后还有一些问题,就是Mingw-w64有些东西没有,比如说make的工具链就不全。所以使用了mingw+mingw64混合配置的方案。
其中make命令使用mingw,而gcc工具使用mingw-w64下的。
首先是编译lua。
cd lua5.3.3
make install mingw
此时会自动安装好一些lua的头文件和部分文件到mingw的安装目录。
还有个需要注意的地方,C:\MinGW\msys\1.0\bin\lua\5.3
这个目录需要存放win64的lua53.dll
我从lua-5.3.3_Win64_dll12_lib.zip中解压出来
此时进入到luas