备注:

 
  大家在进行lapis 开发的时候有些人比较懒直接使用yum 按照luarocks,之后
  使用luarocks 安装lapis 一般来说对于linux 64位的环境都会有些问题(包找不到)
 
1. 错误提示信息
2017/11/18 09:54:09 [error] 21876#0: *1 lua entry thread aborted: runtime error: content_by_lua(nginx.conf.compiled:22):2: module 'lapis' not found:
no field package.preload['lapis']
no file '/usr/local/openresty/site/lualib/lapis.ljbc'
no file '/usr/local/openresty/site/lualib/lapis/init.ljbc'
no file '/usr/local/openresty/lualib/lapis.ljbc'
no file '/usr/local/openresty/lualib/lapis/init.ljbc'
no file '/usr/local/openresty/site/lualib/lapis.lua'
no file '/usr/local/openresty/site/lualib/lapis/init.lua'
no file '/usr/local/openresty/lualib/lapis.lua'
no file '/usr/local/openresty/lualib/lapis/init.lua'
no file './lapis.lua'
no file '/usr/local/openresty/luajit/share/luajit-2.1.0-beta3/lapis.lua'
no file '/usr/local/share/lua/5.1/lapis.lua'
no file '/usr/local/share/lua/5.1/lapis/init.lua'
no file '/usr/local/openresty/luajit/share/lua/5.1/lapis.lua'
no file '/usr/local/openresty/luajit/share/lua/5.1/lapis/init.lua'
no file '/usr/local/openresty/site/lualib/lapis.so'
no file '/usr/local/openresty/lualib/lapis.so'
no file './lapis.so'
no file '/usr/local/lib/lua/5.1/lapis.so'
no file '/usr/local/openresty/luajit/lib/lua/5.1/lapis.so'
no file '/usr/local/lib/lua/5.1/loadall.so'
stack traceback:
coroutine 0:
[C]: in function 'require' 以及 2017/11/18 10:19:55 [error] 21973#0: *4 lua entry thread aborted: runtime error: /usr/local/share/lua/5.1/lapis/router.lua:3: module 'lpeg' not found:
no field package.preload['lpeg']
no file '/usr/local/openresty/site/lualib/lpeg.ljbc'
no file '/usr/local/openresty/site/lualib/lpeg/init.ljbc'
no file '/usr/local/openresty/lualib/lpeg.ljbc'
no file '/usr/local/openresty/lualib/lpeg/init.ljbc'
no file '/usr/local/openresty/site/lualib/lpeg.lua'
no file '/usr/local/openresty/site/lualib/lpeg/init.lua'
no file '/usr/local/openresty/lualib/lpeg.lua'
no file '/usr/local/openresty/lualib/lpeg/init.lua'
no file './lpeg.lua'
no file '/usr/local/openresty/luajit/share/luajit-2.1.0-beta3/lpeg.lua'
no file '/usr/local/share/lua/5.1/lpeg.lua'
no file '/usr/local/share/lua/5.1/lpeg/init.lua'
no file '/usr/local/openresty/luajit/share/lua/5.1/lpeg.lua'
no file '/usr/local/openresty/luajit/share/lua/5.1/lpeg/init.lua'
no file '/usr/local/openresty/site/lualib/lpeg.so'
no file '/usr/local/openresty/lualib/lpeg.so'
no file './lpeg.so'
no file '/usr/local/lib/lua/5.1/lpeg.so'
no file '/usr/local/openresty/luajit/lib/lua/5.1/lpeg.so'
no file '/usr/local/lib/lua/5.1/loadall.so'
stack traceback:
coroutine 0:
[C]: in function 'require'
以及
2. 分析
从上面的错误提示可以看出,主要是包的问题,实际上报是已经安装了,原因64位操作系统,以及luarocks 默认安装包的
位置不是框架查找的地方
我们系统安装的位置:
lapis:
/usr/share/lua/5.1/lapis
lpeg:
/usr/lib64/lua/5.1/lpeg.so
3. 解方法
a. 不用yum 安装而是源码,可控性强,维护简单,参考相关文档
b. nginx.conf 添加 lua_path、lua_cpath 。。。 ,不太喜欢,费事
c. 配置luaroacks lua path 也是一种方法
d. 使用软连接
4. 实际解决(使用d,其他的参考相关文章)
ln -s /usr/lib64/lua /usr/local/lib/lua
ln -s /usr/share/lua/ /usr/local/share/lua
5, 参考文档
https://github.com/luarocks/luarocks/wiki/Installation-instructions-for-Unix#The_default_settings
 
 
 
 

luarocks yum 安装引起的lapis lua 包查找问题(centos7版本)的更多相关文章

  1. Linux之保留yum安装软件后的RPM包

    yum安装软件很方便,但是下载下来的rpm包在安装后默认会被删除掉: 如果希望保留yum安装的软件包该如何做呢? 设置方法: 将/etc/yum.conf里对应的keepcache参数改为1即可,然后 ...

  2. linux下yum安装jdk1.8(rpm包)和tomcat-8.5

    Java是目前可移植性较高的语言,相当火热,tomcat运行就需要Java语言环境 ========= 完美的分割线 ========= 0.java简介 1)tomcat运行需要对应的Java环境, ...

  3. Mysql的安装(二进制免编译包) 5.1版本

    一,Mysql的安装: 1.下载mysql,可以通过http://mirrors.sohu.com/下载mysql软件. wget http://mirrors.sohu.com/mysql/MySQ ...

  4. centos7.0 yum 安装php服务器

    https://blog.csdn.net/jiaoshenmo/article/details/50923900 首先收一下:centos7.0用yum直接安装apache.php他们的默认版本是a ...

  5. Linux下yum安装ffmpeg和使用

    本文属于转载文章:转载地址是http://www.cnblogs.com/dennisit/archive/2012/12/27/2835089.html 使用Yum安装ffmpeg 打开 vi /e ...

  6. [Linux系统] (3)应用安装方式详解(编译安装、rpm包安装、yum安装)

    软件的安装方式: 编译安装 RPM包安装 yum安装 一.编译安装 1.下载一个源码安装包:tengine-2.3.0.tar.gz.这是淘宝二次开发过的nginx.将其解压. .tar.gz 2.查 ...

  7. CentOS 下 rpm包与 yum 安装与卸载

    rpm包的安装:      1.安装一个包 # rpm -ivh 2.升级一个包 # rpm -Uvh 3.移走一个包 # rpm -e 4.安装参数 --force 即使覆盖属于其它包的文件也强迫安 ...

  8. RHEL5.8使用yum安装应用时包冲突的处理

    RHEL5.8使用yum安装应用时包冲突的处理办法记录,总体思路是如果发现包冲突的情形,那么就把冲突的包给删除掉,然后再重新使用yum安装即可. 冲突示例: Transaction Check Err ...

  9. Lua包管理工具Luarocks详解 - 15134559390的个人空间 - 开源中国社区

    Lua包管理工具Luarocks详解 - 15134559390的个人空间 - 开源中国社区 Lua包管理工具Luarocks详解

随机推荐

  1. Java String类为什么不可变?

    原文地址:# Why String is immutable in Java? 众所周知,String类在Java中是不可变的.不可变类简单地说是实例不可修改的类.对于一个实例创建后,其初始化的时候所 ...

  2. 【BZOJ3144】切糕(网络流,最小割)

    [BZOJ3144]切糕(网络流,最小割) 题面 BZOJ 题解 这样的类型很有趣 先不考虑相邻距离差不能超过\(D\)的限制 我们考虑答案,显然就是在每个位置选一个最小的高度割就行了 化成最小割的模 ...

  3. jmeter-00 JMeter 运行过程

    一.GUI mode 图形化界面运行 to run JMeter, run the jmeter.bat (for Windows) or jmeter (for Unix) file. These ...

  4. hdu4009最小树形图

    多建一个根,连到每一个点,然后花费是建水井的钱 然后跑一边最小树形图即可,这题必定有解,因为可以从根开始到每一点,可以不用判无解的情况 #include<map> #include< ...

  5. OLT配置学习

    1.console连接跟一般交换机一样,不赘述 2.修改系统名称 Add Hostname/Device Name: huawei(config)#system sys-info descriptio ...

  6. 杀死dialog

    先 pkill -9 normal.sh 和  pkill -9 terminal_ui.sh 然后在pkill -9 dialog

  7. IOC与DI简介

    IOC:控制反转(Inverse Of Control) 在没用spring框架之前我们是这样写程序的: private UserDao userDao = new UserDaoImpl(); 也就 ...

  8. qml 源码样例

    https://github.com/CodeBees/qtExample https://github.com/zhengtianzuo/QtQuickExamples/blob/master/RE ...

  9. 海康威视 嵌入到web页面相关问题

    因项目上面需求,接触到了海康威视的设备,要把他嵌入到web页面中,所以就开始了爬坑之路 刚开始不知道如何把设备的页面嵌入到项目的web页面中,直到我遇见了他——“WEB3.0控件开发包V1.0.9_C ...

  10. 解决在django中应用keras模型时出现的ValueError("Tensor %s is not an element of this graph." % obj)问题

    用keras训练好模型,再在django初始化加载模型,这个过程没有问题,但是在调用到模型执行model.predict()的时候就报错: raise ValueError("Tensor ...