Как использовать Lua 5.2 с luasocket 3

Я пытаюсь скомпилировать luasocket 3, который я нашел на GitHub с lua 5.2. Проблема в том, я не уверен, как связать вместе Lua с luasocket, Нужно ли компилировать luasocket как DLL, а затем ссылка, если где-то в lua код, или мне просто позвонить с консоли lua?

2 ответа

Попробуйте установить его с помощью Luarocks. Если у вас нет luarocks, установите его, следуя инструкциям на сайте.

Затем загрузите файл rockpec (luasocket-scm-0.rockspec) из репозитория luasocket и запустите

$ luarocks install *path to the rockspec file*

Если все пойдет хорошо, вы сможете использовать luasocket от Lua следующим образом:

local socket = require "socket"
-- now you can use socket.xxx functions

Обычно вам нужно ссылаться только на lua include-файлы (нужно всего 4: luaconf.h, lua.h, lualib.h, а также lauxlib.h) и library/dll (-llua52 в вашем случае). Вы не говорите, какой компилятор вы используете, поэтому трудно быть более конкретным, но у меня есть сценарий (ы), которые собирают luasocket с lua5.2 в Windows, используя mingw (и используя gcc в OSX/Linux). Например, чтобы скомпилировать в Windows, вы можете получить build-win32.sh Сценарий и запустить его как: bash build-win32.sh 5.2 lua luasocket, Он получит все необходимые файлы (используя wget) и скомпилирует все в deps/ папки; полученный исполняемый файл и библиотеки будут помещены в ../bin папка.

Вы также можете получить скомпилированные библиотеки из того же хранилища.

Другие вопросы по тегам