luasocket安装问题

148 views
Skip to first unread message

cz1979

unread,
Jun 17, 2010, 11:56:32 PM6/17/10
to Lua Chinese(Lua中文用户组)
我在lua5.1.4下,源代码编译安装了luasocket2.0.2
在C程序中调用lua脚本require("socket")时报错
cannot run init.lua: ./script/init.lua:3: module 'socket' not found:
no field package.preload['socket']
no file './socket.lua'
no file './script/socket.lua'
no file './script/init/socket.lua'
no file './script/proc/socket.lua'
no file './socket.so'
no file '/usr/local/lib/lua/5.1/socket.so'
no file '/usr/local/lib/lua/5.1/loadall.so'

但是在lua控制台下调用没有错误
Lua 5.1.2 Copyright (C) 1994-2007 Lua.org, PUC-Rio
> socket = require("socket")
> print(socket._VERSION)
--> LuaSocket 2.0.2

luasocket应该是安装上了,但是为什么不能在程序里面调用?有用过的朋友指点一下,谢谢!!

Chunlin Zhang

unread,
Jun 18, 2010, 1:04:40 AM6/18/10
to Lua Chinese(Lua中文用户组)
你检查一下你 C 语言环境里的 package.cpath 和 package.path 这两个路径(C 代码里是
LUA_PATH_DEFAULT 和 LUA_CPATH_DEFAULT),是不是需要修改一下才能找到 luasocket,既然 lua 控制
台能找到,那就跟那边的 package.cpath 和 package.path 比较一下缺了什么.

On Jun 18, 11:56 am, cz1979 <chinesegamedevelo...@gmail.com> wrote:
> 我在lua5.1.4下,源代码编译安装了luasocket2.0.2
> 在C程序中调用lua脚本require("socket")时报错
> cannot run init.lua: ./script/init.lua:3: module 'socket' not found:
> no field package.preload['socket']
> no file './socket.lua'
> no file './script/socket.lua'
> no file './script/init/socket.lua'
> no file './script/proc/socket.lua'
> no file './socket.so'
> no file '/usr/local/lib/lua/5.1/socket.so'
> no file '/usr/local/lib/lua/5.1/loadall.so'
>
> 但是在lua控制台下调用没有错误

> Lua 5.1.2 Copyright (C) 1994-2007Lua.org, PUC-Rio> socket = require("socket")

cz1979

unread,
Jun 20, 2010, 9:35:40 PM6/20/10
to lua...@googlegroups.com
 

这两天检索了一下资料,找到问题解决了,在编译luasocket的时候加上了-Wl,-E和-llua这几个编译选项搞定,参看这篇文章http://shavingha.blog.163.com/blog/static/10378336200692692524667/

Chunlin Zhang

unread,
Jun 20, 2010, 9:48:12 PM6/20/10
to lua...@googlegroups.com
比较奇怪,现象跟你的差别比较大嘛,他的现象是可以运行但是会 crash.

2010/6/21 cz1979 <chinesegam...@gmail.com>:
>>
>
> 这两天检索了一下资料,找到问题解决了,在编译luasocket的时候加上了-Wl,-E和-llua这几个编译选项搞定,参看这篇文章http://shavingha.blog.163.com/blog/static/10378336200692692524667/
>
> --
> 您收到此邮件是因为您订阅了 Google 网上论坛的“Lua Chinese(Lua中文用户组)”论坛。
> 要向此网上论坛发帖,请发送电子邮件至 lua...@googlegroups.com
> 要取消订阅此网上论坛,请发送电子邮件至 lua_cn+un...@googlegroups.com
> 若有更多问题,请通过 http://groups.google.com/group/lua_cn?hl=zh-CN 访问此网上论坛。
>

Reply all
Reply to author
Forward
0 new messages