LuaForWindows を使用して Lua 5.1 をインストールしましたが、インストールされたものに luasocket.h が表示されないため、Visual Studio C++ プロジェクトからそれを使用できないようです。
だから、ビルドしようとしていて、Lua 5.2 の最新バージョンを github から入手しましたが、sourceforge から Lua 5.1 のソースが見つからないため、開発中です。
http://luaforge.net/projects/luasocket/にアクセスすると、LuaSocket ページに戻ります。
それで、Lua 5.2.2 をビルドしました。これが luasocket の build.bat です。
set INCLUDE=%INCLUDE%;C:\Users\me\Downloads\lua-5.2.2\src
echo %INCLUDE%
set LIB=%LIB%;C:\Users\me\Downloads\lua-5.2.2\src
echo %LIB%
ren unix.c unix.c00
ren usocket.c usocket.c00
cl /MD /O2 /W3 /c /nologo /DWIN32_LEAN_AND_MEAN *.c
ren mime.obj mime.o
link /DLL /OUT:socket.dll /base:0x67800000 /export:luaopen_socket_core *.obj mime.o msvcrt.lib lua5.2.lib wsock32.lib
link /DLL /OUT:mime.dll /base:0x67700000 /export:luaopen_mime_core mime.o msvcrt.lib lua5.2.lib
最大の問題は、luaL_openlib undefined
一部の c ファイルをコンパイルしようとしたときに発生し_luaL_openlib
、未解決の外部シンボルが参照されることですが、これらは関連する問題です。
現在、Lua 5.1 を使用するか 5.2 を使用するかは問題ではありませんが、LuaSocket を使用できるようにする必要があるため、LuaForWindows ( https://code.google.com/p/luaforwindows/ )から使用する方法はありますか?または、問題を解決する build.bat に問題がありますか?