Форум программистов, компьютерный форум, киберфорум
Наши страницы
Lua
Войти
Регистрация
Восстановить пароль
 
RRR_RRR_RRR
1 / 1 / 1
Регистрация: 28.02.2013
Сообщений: 89
#1

Сборка модуля 'socket' из исходников - Lua

01.12.2014, 13:04. Просмотров 1077. Ответов 8
Метки нет (Все метки)

Добрый день!

Выполняю следующую последовательность действий:
1) git clone https://github.com/LuaDist/luasocket - получаю репозиторий с исходниками
http://www.cyberforum.ru/lua/thread1872552.html
2) в makefile выставляю PLAT=mingw
3) собираю Mingw make'ом и получаю socket.dll.3.0-rc1 и mime.dll.1.0.3
4) переименовываю эти файлы в socket.dll и mime.dll соответственно.
5) Пишу скрипт
global = _G

package.path="D:\\Utils\\lua-5.2.3_Win32_bin\\l_socket\\luasocket\\src\\?.dll"
package.cpath='D:\\Utils\\lua-5.2.3_Win32_bin\\l_socket\\luasocket\\src\\?.dll'

sock = require("socket")


6) запускаю и получаю ошибку
lua.exe: error loading module 'socket' from file 'D:\Utils\lua-5.2.3_Win32_bin\l_socket\luasocket\src\socket.dll':
...ls\lua-5.2.3_Win32_bin\l_socket\luasocket\src\socket.dll:1: '=' expected near char(144)
stack traceback:
[C]: in ?
[C]: in function 'require'
UDP_client_server.lua:6: in main chunk
[C]: in ?
Вопрос: кто чего может подсказать по поводу ошибки? Мож собираю чего не так?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.12.2014, 13:04
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Сборка модуля 'socket' из исходников (Lua):

Сборка Qt из исходников
Всем привет! Пытаюсь собрать qt из исходников, вылезает ошибка std::tr1 has...

Сборка Qt из исходников
Доброго времени суток, помогите пожалуйста. Собираю Qt из исходников с...

Сборка Qt из исходников
Нужно было собрать статическую Qt5 из исходников под Windows. Скачал...

Сборка Dll из исходников
Здравствуйте, уважаемые форумчане.На днях собрался написать...

Сборка исходников Ogre в решение
Здравствуйте, изучаю работу с 3D, отыскал вот эту статью...

8
NoMasters
Псевдослучайный
1909 / 1120 / 90
Регистрация: 13.09.2011
Сообщений: 3,178
01.12.2014, 13:52 #2
Стоит убрать строку
Цитата Сообщение от RRR_RRR_RRR Посмотреть сообщение
package.path="D:\\Utils\\lua-5.2.3_Win32_bin\\l_socket\\luasocket\\src\\?.dll"
.dll — это таки не модуль на lua.
1
RRR_RRR_RRR
1 / 1 / 1
Регистрация: 28.02.2013
Сообщений: 89
01.12.2014, 15:47  [ТС] #3
Убрал (закомментировал) указанную строку и получил:
lua.exe: error loading module 'socket' from file 'D:\Utils\lua-5.2.3_Win32_bin\l_socket\luasocket\src\socket.dll':
The specified procedure could not be found.

stack traceback:
[C]: in ?
[C]: in function 'require'
UDP_client_server.lua:6: in main chunk
[C]: in ?
Добавлено через 1 час 49 минут
Проблему решил следующим образом:

раскомментировал строку 'package.path="D:\\Utils\\lua-5.2.3_Win32_bin\\l_socket\\luasocket\\src\\?.dll"' и исправил "?.dll" на "?.lua"
0
Avazart
Эксперт С++
7674 / 5583 / 541
Регистрация: 10.12.2010
Сообщений: 25,046
Записей в блоге: 17
01.12.2014, 17:22 #4
Цитата Сообщение от NoMasters Посмотреть сообщение
.dll — это таки не модуль на lua.
Модулем а точнее сказать библиотекой lua может быть как скрипт так и dll, насколько я знаю.
1
NoMasters
Псевдослучайный
1909 / 1120 / 90
Регистрация: 13.09.2011
Сообщений: 3,178
02.12.2014, 16:23 #5
Avazart, package.path — это путь именно до модулей на lua(возможно, собранных в байткод). Типичная вендолиба таковым не является, результатом чего и был первый вариант ругани интерпретатора.
0
Avazart
Эксперт С++
7674 / 5583 / 541
Регистрация: 10.12.2010
Сообщений: 25,046
Записей в блоге: 17
02.12.2014, 16:45 #6
Цитата Сообщение от NoMasters Посмотреть сообщение
Типичная вендолиба таковым не является
Типичная может как раз быть, но естественно написанная для lua и с интерфейсом lua

Читаем Lua за 60 минут В самом конце статьи "Между Lua и не-Lua"

Что касается именно скриптов, часто они лишь обвертка над dll.

Добавлено через 4 минуты
RRR_RRR_RRR, Кстати а зачем потребовалась сборка? Почему не использовать пакет Lua для Windows, там как бы "все включено" ?
0
RRR_RRR_RRR
1 / 1 / 1
Регистрация: 28.02.2013
Сообщений: 89
02.12.2014, 16:56  [ТС] #7
Прокачиваю скилы - было любопытно самому собрать, а потом проверить как работает.

Спасибо всем за рассуждения и ссылку - гляну обязательно.
0
NoMasters
Псевдослучайный
1909 / 1120 / 90
Регистрация: 13.09.2011
Сообщений: 3,178
02.12.2014, 17:05 #8
Avazart, читать всё-таки лучше официальную документацию. Из неё явно следует, что модули на С и на lua — это четыре разных человека ищутся и загружаются по-разному.
0
Avazart
Эксперт С++
7674 / 5583 / 541
Регистрация: 10.12.2010
Сообщений: 25,046
Записей в блоге: 17
02.12.2014, 17:19 #9
Загружаются внешне одинаково через require.
0
02.12.2014, 17:19
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.12.2014, 17:19
Привет! Вот еще темы с решениями:

QElectroTech сборка из исходников под виндоус
Всем привет) вопрос кто нибудь собирал QElectroTech под виндоус?Скачала...

Сборка ffmpeg из исходников для использования в Qt Creator-e
Здравствуйте, кто-нибудь собирал библиотеки для ffmpeg для Windows? Если да то...

Сборка исходников RakNet и запуск простого примера под Linux
Привет. В плюсах я новичок. Пытаюсь собрать простой пример тестового чата...

Сборка загрузочного модуля
задание звучит так: "Сборка загрузочного модуля из двух с помощью интерфейса...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru