CentOS 上配置 lua 的服务器环境(enet)

安装 lua & luarocket

安装依赖

$ yum install gcc gcc-c++ kernel-devel     
$ yum install readline-dev                          
$ yum install ncurses-devel.i386                

下载并编译lua源文件

$ wget http://www.lua.org/ftp/lua-5.1.4.tar.gz      
$ tar zxvf lua-5.1.4.tar.gz                                      
$ cd lua-5.1.4                                                        
$ make linux                                     

下载并安装 luarocks

$ wget http://luarocks.org/releases/luarocks-2.0.6.tar.gz     
$ tar zxvf luarocks-2.0.6.tar.gz                                              
$ cd luarocks-2.0.6                                                                
$ ./configure                                                                           
$ make                                                                                   
$ make install                    

安装 enet && lua enet

下载并编译enet

$ wget http://enet.bespin.org/download/enet-1.3.13.tar.gz
$ tar zxvf enet-1.3.13.tar.gz                                              
$ cd enet-1.3.13                                                                
$ ./configure                                                                           
$ make                                                                                   
$ make install                    

下载并安装 lua enet

$ luarocks install enet

测一下

$ lua
> require "enet"

没报错的话说明好了

我遇到两次报错,第一次是没找到 enet.so ,这是因为lua在设置的路径范围内没有找到它,设置下LUA_CPATH ,这个值可以通过 luarocks path 查看

$ export LUA_CPATH='/usr/lib/lua/5.1//?.so;/usr/.luarocks/lib/lua/5.1//?.so;./?.so;/usr/lib/lua/5.1/?.so;/usr/lib/lua/5.1/loadall.so'

第二次是加载 enet.so 的时候没找到 libenet.so.7 ,这是因为动态链接库 so 在路径范围内没有找到它,设置下 LD_LIBRARY_PATH,用 find / -name libenent.so.7 查看文件在哪里

libenet.so.7: cannot open shared object file: No such file or directory
$ export LD_LIBRARY_PATH=/home/tangyikejun/lib:$LD_LIBRARY_PATH

开端口

iptables -A INPUT -m state --state NEW -p tcp --dport 1111 -j 

写个示例测连接,我第一次写没成功,用 nc 测一下连接

服务端

$ nc -l 1111

客户端

$ nc 34.55.44.222 1111

如果连通的话在客户端输入 haha,在服务端也会收到 haha

参考:
centos 安装lua
so 文件查找路径的方式

原文链接: https://www.cnblogs.com/tangyikejun/p/CentOS_Lua_ENet.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍

    CentOS 上配置 lua 的服务器环境(enet)

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/269159

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年2月14日 下午8:02
下一篇 2023年2月14日 下午8:04

相关推荐