Próbuję skompilować luasocket 3, które znalazłem na GitHub pod numerem lua 5.2. Problem polega na tym, że nie jestem pewien, jak powiązać ze sobą Lua
z luasocket
. Czy muszę skompilować luasocket
jako DLL, a następnie odwołać się, jeśli gdzieś w kodzie lua
, czy powinienem po prostu wywołać to z konsoli lua?Jak używać Lua 5.2 z luasocket 3
Odpowiedz
Spróbuj zainstalować, używając luarocks. Jeśli nie masz luarocks, zainstaluj go zgodnie z instrukcjami na stronie.
Następnie pobrać plik rockspec (luasocket-SCM-0.rockspec) od luasocket repo i uruchomić
$ luarocks install *path to the rockspec file*
Jeśli wszystko pójdzie dobrze, będziesz mógł korzystać z luasocket Lua tak:
local socket = require "socket"
-- now you can use socket.xxx functions
Zazwyczaj wystarczy tylko odwołać lua zawierać pliki (są tam tylko 4 potrzebne: luaconf.h
, lua.h
, lualib.h
i lauxlib.h
) oraz biblioteki/DLL (-llua52 w danym przypadku). Nie mówisz, jakiego kompilatora używasz, więc trudno jest być bardziej konkretnym, ale mam script(s), który buduje luasocket z lua5.2 na Windowsie używając mingw (i używając gcc na OSX/Linux). Na przykład, aby skompilować w systemie Windows, można uzyskać skrypt build-win32.sh
i uruchomić go jako: bash build-win32.sh 5.2 lua luasocket
. Otrzyma wszystkie potrzebne pliki (za pomocą wget) i skompiluje wszystko w folderze deps/
; wynikowy plik wykonywalny i biblioteki zostaną umieszczone w folderze ../bin
.
Można również uzyskać skompilowane biblioteki z tego samego repository.
Czy próbowałeś go zbudować z luarocks? W repozytorium jest rockspec. – mpeterv
Czy jest jakikolwiek tutorial, jak to zrobić? Jestem początkującym z Luą – miller