lua-lluv-websocket icon indicating copy to clipboard operation
lua-lluv-websocket copied to clipboard

intall lua-websocket is failed !!!

Open GitHubProgarm opened this issue 6 years ago • 15 comments

image

image

link is faile!!!!

I do not know why? has other software?

install command is "luarocks install --server=https://luarocks.org/dev lluv-websocket UV_INCDIR=G:\save\other\libuv-devinclude UV_DIR=G:\save\other\libuv-devlibuv-dev"

GitHubProgarm avatar Nov 18 '19 12:11 GitHubProgarm

  1. Link to the master is valid. May be your version on LuaRocks does not support TLS version required by githib.
  2. Do you link against static library? If yes you have to add some additional library in the dependencies. Unfortunately i do not know how to handle this different using rockspec file and It is not possible handle all combinations via multiple rockspec files. I think you can find needed libraries in google. I can help if you will heve any problems

moteus avatar Nov 19 '19 08:11 moteus

1.Support lua5.3? I build lua-lluv-websocket project, and need lluv .so use luarocks command "luarocks install lluv" build this ,and out put problems(second png).

2.How to build lua-lluv-websocket , you with other compilation methods, not user luarocks?

3.My project support lua5.3 , and want to use websocket lib, you have better recommendations.

4.And this websocket can support win and linux?

GitHubProgarm avatar Nov 19 '19 09:11 GitHubProgarm

Both lluv and lluv-websocket support Lua 5.3 I use LuaRocks tou build them on Win/Linux/OSx systems Integrate libuv to some existed project may be difficult About building lluv library - rockspeck file does not support static version of libuv library becase it does not link with windows system libraries. You need to update rockspec file to fix it, or link with dynamic libuv library

moteus avatar Nov 19 '19 20:11 moteus

Can you recommend the version of lluv you used to me?

How to build dynamic libuv library in Win?

I found lua-rocks build lluv with static version of libuv library.

And update lua-rocks version is luarocks-3.2.1 build lluv is failed!!

Build lluv-websocket by luarocks ,be dependent on lluv?

GitHubProgarm avatar Nov 20 '19 02:11 GitHubProgarm

image

I do not konw? use luarocks buid lluv or lluv-websocket , always first build lluv.dll.

GitHubProgarm avatar Nov 20 '19 05:11 GitHubProgarm

I build lluv-websocket on linux is success !!

Installing https://luarocks.org/dev/lluv-websocket-scm-0.rockspec Missing dependencies for lluv-websocket scm-0: lluv > 0.1.1 (not installed)

lluv-websocket scm-0 depends on lluv > 0.1.1 (not installed) Installing https://luarocks.org/dev/lluv-scm-0.rockspec gcc -O2 -fPIC -I/usr/local/include -c src/lluv_utils.c -o src/lluv_utils.o -I/usr/local/include src/lluv_utils.c: In function ‘lluv_check_os_sock’: src/lluv_utils.c:502:12: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] return (uv_os_sock_t)lua_touserdata(L, idx); ^ gcc -O2 -fPIC -I/usr/local/include -c src/lluv.c -o src/lluv.o -I/usr/local/include gcc -O2 -fPIC -I/usr/local/include -c src/lluv_error.c -o src/lluv_error.o -I/usr/local/include gcc -O2 -fPIC -I/usr/local/include -c src/lluv_fbuf.c -o src/lluv_fbuf.o -I/usr/local/include gcc -O2 -fPIC -I/usr/local/include -c src/lluv_fs.c -o src/lluv_fs.o -I/usr/local/include gcc -O2 -fPIC -I/usr/local/include -c src/lluv_handle.c -o src/lluv_handle.o -I/usr/local/include gcc -O2 -fPIC -I/usr/local/include -c src/lluv_stream.c -o src/lluv_stream.o -I/usr/local/include gcc -O2 -fPIC -I/usr/local/include -c src/lluv_idle.c -o src/lluv_idle.o -I/usr/local/include gcc -O2 -fPIC -I/usr/local/include -c src/lluv_loop.c -o src/lluv_loop.o -I/usr/local/include gcc -O2 -fPIC -I/usr/local/include -c src/lluv_tcp.c -o src/lluv_tcp.o -I/usr/local/include gcc -O2 -fPIC -I/usr/local/include -c src/lluv_timer.c -o src/lluv_timer.o -I/usr/local/include gcc -O2 -fPIC -I/usr/local/include -c src/lluv_pipe.c -o src/lluv_pipe.o -I/usr/local/include gcc -O2 -fPIC -I/usr/local/include -c src/lluv_tty.c -o src/lluv_tty.o -I/usr/local/include gcc -O2 -fPIC -I/usr/local/include -c src/lluv_udp.c -o src/lluv_udp.o -I/usr/local/include gcc -O2 -fPIC -I/usr/local/include -c src/lluv_prepare.c -o src/lluv_prepare.o -I/usr/local/include gcc -O2 -fPIC -I/usr/local/include -c src/lluv_check.c -o src/lluv_check.o -I/usr/local/include gcc -O2 -fPIC -I/usr/local/include -c src/lluv_poll.c -o src/lluv_poll.o -I/usr/local/include gcc -O2 -fPIC -I/usr/local/include -c src/lluv_signal.c -o src/lluv_signal.o -I/usr/local/include gcc -O2 -fPIC -I/usr/local/include -c src/lluv_fs_event.c -o src/lluv_fs_event.o -I/usr/local/include gcc -O2 -fPIC -I/usr/local/include -c src/lluv_fs_poll.c -o src/lluv_fs_poll.o -I/usr/local/include gcc -O2 -fPIC -I/usr/local/include -c src/lluv_req.c -o src/lluv_req.o -I/usr/local/include gcc -O2 -fPIC -I/usr/local/include -c src/lluv_misc.c -o src/lluv_misc.o -I/usr/local/include gcc -O2 -fPIC -I/usr/local/include -c src/lluv_process.c -o src/lluv_process.o -I/usr/local/include gcc -O2 -fPIC -I/usr/local/include -c src/lluv_dns.c -o src/lluv_dns.o -I/usr/local/include gcc -O2 -fPIC -I/usr/local/include -c src/l52util.c -o src/l52util.o -I/usr/local/include gcc -O2 -fPIC -I/usr/local/include -c src/lluv_list.c -o src/lluv_list.o -I/usr/local/include gcc -shared -o lluv.so -L/usr/local/lib src/lluv_utils.o src/lluv.o src/lluv_error.o src/lluv_fbuf.o src/lluv_fs.o src/lluv_handle.o src/lluv_stream.o src/lluv_idle.o src/lluv_loop.o src/lluv_tcp.o src/lluv_timer.o src/lluv_pipe.o src/lluv_tty.o src/lluv_udp.o src/lluv_prepare.o src/lluv_check.o src/lluv_poll.o src/lluv_signal.o src/lluv_fs_event.o src/lluv_fs_poll.o src/lluv_req.o src/lluv_misc.o src/lluv_process.o src/lluv_dns.o src/l52util.o src/lluv_list.o -L/usr/local/lib -Wl,-rpath,/usr/local/lib: -luv -lrt lluv scm-0 is now installed in /data/lua_project/luarocks (license: MIT/X11)

Cloning into 'lua-lluv-websocket'... remote: Enumerating objects: 65, done. remote: Counting objects: 100% (65/65), done. remote: Compressing objects: 100% (63/63), done. remote: Total 65 (delta 7), reused 26 (delta 2), pack-reused 0 Receiving objects: 100% (65/65), 46.84 KiB | 49.00 KiB/s, done. Resolving deltas: 100% (7/7), done. lluv-websocket scm-0 is now installed in /data/lua_project/luarocks (license: MIT/X11)

Win has problem ,and Luarocks is same version !!

image

GitHubProgarm avatar Nov 21 '19 06:11 GitHubProgarm

On Windows I use my lua-windows-environment distro which includes some prebuild external libraries (not Lua modules) and sligthly patched LuaRocks. I did not update it a while and it has not the latest library versions

C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC>luaenv x64 5.1
==========================================
 Set Lua 5.1/x64 environment
 Lua path: C:\luaenv\x64\5.1\bin
 LuaRocks path: C:\luaenv\x64\LuaRocks
==========================================
C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC>luarocks install lluv
Installing https://luarocks.org/lluv-0.1.10-1.src.rock

cl /nologo /MD /O2 -c -Fosrc/lluv_utils.obj -IC:\luaenv\x64\5.1\include\ src/lluv_utils.c -IC:/luaenv/x64/external/include
lluv_utils.c
cl /nologo /MD /O2 -c -Fosrc/lluv.obj -IC:\luaenv\x64\5.1\include\ src/lluv.c -IC:/luaenv/x64/external/include
lluv.c
cl /nologo /MD /O2 -c -Fosrc/lluv_error.obj -IC:\luaenv\x64\5.1\include\ src/lluv_error.c -IC:/luaenv/x64/external/include
lluv_error.c
cl /nologo /MD /O2 -c -Fosrc/lluv_fbuf.obj -IC:\luaenv\x64\5.1\include\ src/lluv_fbuf.c -IC:/luaenv/x64/external/include
lluv_fbuf.c
cl /nologo /MD /O2 -c -Fosrc/lluv_fs.obj -IC:\luaenv\x64\5.1\include\ src/lluv_fs.c -IC:/luaenv/x64/external/include
lluv_fs.c
cl /nologo /MD /O2 -c -Fosrc/lluv_handle.obj -IC:\luaenv\x64\5.1\include\ src/lluv_handle.c -IC:/luaenv/x64/external/include
lluv_handle.c
cl /nologo /MD /O2 -c -Fosrc/lluv_stream.obj -IC:\luaenv\x64\5.1\include\ src/lluv_stream.c -IC:/luaenv/x64/external/include
lluv_stream.c
cl /nologo /MD /O2 -c -Fosrc/lluv_idle.obj -IC:\luaenv\x64\5.1\include\ src/lluv_idle.c -IC:/luaenv/x64/external/include
lluv_idle.c
cl /nologo /MD /O2 -c -Fosrc/lluv_loop.obj -IC:\luaenv\x64\5.1\include\ src/lluv_loop.c -IC:/luaenv/x64/external/include
lluv_loop.c
cl /nologo /MD /O2 -c -Fosrc/lluv_tcp.obj -IC:\luaenv\x64\5.1\include\ src/lluv_tcp.c -IC:/luaenv/x64/external/include
lluv_tcp.c
cl /nologo /MD /O2 -c -Fosrc/lluv_timer.obj -IC:\luaenv\x64\5.1\include\ src/lluv_timer.c -IC:/luaenv/x64/external/include
lluv_timer.c
cl /nologo /MD /O2 -c -Fosrc/lluv_pipe.obj -IC:\luaenv\x64\5.1\include\ src/lluv_pipe.c -IC:/luaenv/x64/external/include
lluv_pipe.c
cl /nologo /MD /O2 -c -Fosrc/lluv_tty.obj -IC:\luaenv\x64\5.1\include\ src/lluv_tty.c -IC:/luaenv/x64/external/include
lluv_tty.c
cl /nologo /MD /O2 -c -Fosrc/lluv_udp.obj -IC:\luaenv\x64\5.1\include\ src/lluv_udp.c -IC:/luaenv/x64/external/include
lluv_udp.c
cl /nologo /MD /O2 -c -Fosrc/lluv_prepare.obj -IC:\luaenv\x64\5.1\include\ src/lluv_prepare.c -IC:/luaenv/x64/external/include
lluv_prepare.c
cl /nologo /MD /O2 -c -Fosrc/lluv_check.obj -IC:\luaenv\x64\5.1\include\ src/lluv_check.c -IC:/luaenv/x64/external/include
lluv_check.c
cl /nologo /MD /O2 -c -Fosrc/lluv_poll.obj -IC:\luaenv\x64\5.1\include\ src/lluv_poll.c -IC:/luaenv/x64/external/include
lluv_poll.c
cl /nologo /MD /O2 -c -Fosrc/lluv_signal.obj -IC:\luaenv\x64\5.1\include\ src/lluv_signal.c -IC:/luaenv/x64/external/include
lluv_signal.c
cl /nologo /MD /O2 -c -Fosrc/lluv_fs_event.obj -IC:\luaenv\x64\5.1\include\ src/lluv_fs_event.c -IC:/luaenv/x64/external/include
lluv_fs_event.c
cl /nologo /MD /O2 -c -Fosrc/lluv_fs_poll.obj -IC:\luaenv\x64\5.1\include\ src/lluv_fs_poll.c -IC:/luaenv/x64/external/include
lluv_fs_poll.c
cl /nologo /MD /O2 -c -Fosrc/lluv_req.obj -IC:\luaenv\x64\5.1\include\ src/lluv_req.c -IC:/luaenv/x64/external/include
lluv_req.c
cl /nologo /MD /O2 -c -Fosrc/lluv_misc.obj -IC:\luaenv\x64\5.1\include\ src/lluv_misc.c -IC:/luaenv/x64/external/include
lluv_misc.c
cl /nologo /MD /O2 -c -Fosrc/lluv_process.obj -IC:\luaenv\x64\5.1\include\ src/lluv_process.c -IC:/luaenv/x64/external/include
lluv_process.c
cl /nologo /MD /O2 -c -Fosrc/lluv_dns.obj -IC:\luaenv\x64\5.1\include\ src/lluv_dns.c -IC:/luaenv/x64/external/include
lluv_dns.c
cl /nologo /MD /O2 -c -Fosrc/l52util.obj -IC:\luaenv\x64\5.1\include\ src/l52util.c -IC:/luaenv/x64/external/include
l52util.c
cl /nologo /MD /O2 -c -Fosrc/lluv_list.obj -IC:\luaenv\x64\5.1\include\ src/lluv_list.c -IC:/luaenv/x64/external/include
lluv_list.c
link -dll -def:lluv.def -out:lluv.dll C:\luaenv\x64\5.1\lib\/lua51.lib src/lluv_utils.obj src/lluv.obj src/lluv_error.obj src/lluv_fbuf.obj src/lluv_fs.obj src/lluv_handle.obj src/lluv_stream.obj src/lluv_idle.obj src/lluv_loop.obj src/lluv_tcp.obj src/lluv_timer.obj src/lluv_pipe.obj src/lluv_tty.obj src/lluv_udp.obj src/lluv_prepare.obj src/lluv_check.obj src/lluv_poll.obj src/lluv_signal.obj src/lluv_fs_event.obj src/lluv_fs_poll.obj src/lluv_req.obj src/lluv_misc.obj src/lluv_process.obj src/lluv_dns.obj src/l52util.obj src/lluv_list.obj -libpath:C:/luaenv/x64/external/lib libuv.lib ws2_32.lib Iphlpapi.lib Psapi.lib Advapi32.lib
Microsoft (R) Incremental Linker Version 14.00.24215.1
Copyright (C) Microsoft Corporation.  All rights reserved.

lluv.obj : warning LNK4197: export 'luaopen_lluv' specified multiple times; using first specification
   Creating library lluv.lib and object lluv.exp
lluv 0.1.10-1 is now installed in C:\luaenv\x64\5.1\systree (license: MIT/X11)
C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC>luarocks install lluv-websocket --from=https://luarocks.org/dev
Installing https://luarocks.org/dev/lluv-websocket-scm-0.rockspec

Cloning into 'lua-lluv-websocket'...
remote: Enumerating objects: 65, done.
remote: Counting objects: 100% (65/65), done.
remote: Compressing objects: 100% (63/63), done.
remote: Total 65 (delta 7), reused 26 (delta 2), pack-reused 0
Receiving objects: 100% (65/65), 46.84 KiB | 138.00 KiB/s, done.
Resolving deltas: 100% (7/7), done.
lluv-websocket scm-0 is now installed in C:\luaenv\x64\5.1\systree (license: MIT/X11)

moteus avatar Nov 21 '19 07:11 moteus

Which version of libuv do you use?1.3XX version?

CrtSetReportHook  GetMessageA TranslateMessage DispatchMessageA MapVirtualKeyW GetUserProfileDirectoryW GetSystemMetrilluv Link failed all win system function!!

GitHubProgarm avatar Nov 21 '19 08:11 GitHubProgarm

I build lluv.so success(lua5.3) ,but "lluv.websocket" not found in the lluv?

error : ./lua/testwebsocket.lua:4: module 'lluv.websocket' not found: no field package.preload['lluv.websocket'] no file './lua/lluv/websocket.lua' no file '/usr/local/share/lua/5.3/lluv/websocket.lua' no file '/usr/local/share/lua/5.3/lluv/websocket/init.lua' no file '/usr/local/lib/lua/5.3/lluv/websocket.lua' no file '/usr/local/lib/lua/5.3/lluv/websocket/init.lua' no file './lluv/websocket.lua' no file './lluv/websocket/init.lualluv/websocket.lua' no file '/data/project/LinuxLua/AgentServer/build/lua/5.3/include/lluv/websocket.lua' no file '/usr/local/lib/lua/5.3/lluv/websocket.so' no file '/usr/local/lib/lua/5.3/loadall.so' no file './lluv/websocket.solluv/websocket.so' no file '/data/project/LinuxLua/AgentServer/build/lua/5.3/lib/lluv/websocket.so' no module 'lluv.websocket' in file '/data/project/LinuxLua/AgentServer/build/lua/5.3/lib/lluv.so' stack[0] -> line -1 : unknown[[C] : line -1] stack[1] -> line -1 : require()[[C] : line -1] stack[2] -> line 4 : unknown[./lua/testwebsocket.lua : line 0] stack[3] -> line -1 : require()[[C] : line -1] stack[4] -> line 145 : unknown[lua/ManagerTest.lua : line 0]

GitHubProgarm avatar Nov 21 '19 10:11 GitHubProgarm

luarocks build lluv-websock with this "lluv-scm-0.rockspec" default x64? I build x86 version on Win.

GitHubProgarm avatar Nov 22 '19 02:11 GitHubProgarm

CrtSetReportHook  GetMessageA TranslateMessage DispatchMessageA MapVirtualKeyW GetUserProfileDirectoryW GetSystemMetrilluv Link failed all win system function!!

Some of them are needed only for debug versions. Did you try link against to release version?

I build lluv.so success(lua5.3) ,but "lluv.websocket" not found in the lluv?

You install library to the project directoory but trying to find them in the system path.

luarocks build lluv-websock with this "lluv-scm-0.rockspec" default x64? I build x86 version on Win.

websocket library is pure Lua library so it is not x86/x64 lluv library - is the C library and can be compiled in any way you want. Luarocks supports both arhitectures. But I have to install 2 versions of them to do this.

moteus avatar Nov 23 '19 11:11 moteus

"I build lluv.so success(lua5.3) ,but "lluv.websocket" not found in the lluv?" This problem in Luarocks version 2.4.3 , No problem with later version. My Win Project just only debug , I'm not going to get the release. And Luarocks build by myself with Win x86. I build success mongo.dll(mongo.so) with this!! I do not how to build lluv-websocket.

Why don't you tell me which version you use.which luarocks version and lluv version?

GitHubProgarm avatar Nov 25 '19 06:11 GitHubProgarm

Once again. On windows I use my lua-windows-environment distro. Which contains LuaRocks 3.0.4. On linux I also use this version.

I build lluv.so success(lua5.3) ,but "lluv.websocket" not found in the lluv?

This does not make sence to me. lluv-websocket is just set of Lua files. They do not need to be built - just be copied to your LUA_DIR. From your post

lluv scm-0 is now installed in **/data/lua_project/luarocks** (license: MIT/X11)
lluv-websocket scm-0 is now installed in **/data/lua_project/luarocks** (license: MIT/X11)

But when you try to load them you looking in other directories (file names websocket.lu).

no file './lua/lluv/websocket.lua'
no file '/usr/local/share/lua/5.3/lluv/websocket.lua'
no file '/usr/local/share/lua/5.3/lluv/websocket/init.lua'
no file '/usr/local/lib/lua/5.3/lluv/websocket.lua'
no file '/usr/local/lib/lua/5.3/lluv/websocket/init.lua'
no file './lluv/websocket.lua'
no file './lluv/websocket/init.lualluv/websocket.lua'
no file '**/data/project/LinuxLua/AgentServer/build**/lua/5.3/include/lluv/websocket.lua'

This is not LuaRocks problem but your Lua environment configuration. LuaRocks can install module in any place and it does not responsible for Lua configuration.

moteus avatar Nov 25 '19 08:11 moteus

First Linux llbuv is OK, It's just a problem with the use

And I found problem with Win. Libuv has been upgraded to the latest version v1.8, and the required lib files have changed: WS2 ﹣ u 32.lib is OK, but two LIBS need to be added. -->"userenv.lib", "msvcrtd.lib"

"libraries = {"libuv", "Iphlpapi", "Psapi", "userenv", "msvcrtd"},"

I try this llib is ok with C++ project . Now I want to upload rockspec file, But I do not how to do this. I hope you can upload you rockspec file. Thank you so much!!

GitHubProgarm avatar Nov 27 '19 03:11 GitHubProgarm

image

websocket.extensions and lluv.ssl is not found or is nil

If it's not found, is there any problem? Because it's not found under Linux, the same as win.

GitHubProgarm avatar Dec 04 '19 07:12 GitHubProgarm