Я установил Lua 5.1 с помощью LuaForWindows, но я не вижу luasocket.h в том, что было установлено, поэтому, похоже, я не могу использовать его в своем проекте Visual Studio C++.
Итак, я пытаюсь собрать и получил последнюю версию с github для Lua 5.2, хотя она находится в разработке, поскольку я не могу найти исходный код для Lua 5.1 на sourceforge.
Когда я захожу на http://luaforge.net/projects/luasocket/, я возвращаюсь к Страница LuaSocket.
Итак, я собрал Lua 5.2.2, и это мой build.bat для luasocket:
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, которая решит мою проблему?