未发现'lua'软件包,但我已经安装了它。

我尝试在Ubuntu 10.4 LTS上安装_Lsyncd_,但我遇到了一些错误:

> checking for LUA... no checking for
> LUA... no checking for LUA...
> configure: error: Package requirements
> (lua >= 5.1.3) were not met:
>
> No package 'lua' found
>
> Consider adjusting the PKG_CONFIG_PATH
> environment variable if you installed
> software in a non-standard prefix.
>
> Alternatively, you may set the
> environment variables LUA_CFLAGS and
> LUA_LIBS to avoid the need to call
> pkg-config. See the pkg-config man
> page for more details.

但我知道我已经安装了Lua

# lua -v
Lua 5.1.4  Copyright (C) 1994-2008 Lua.org, PUC-Rio

我在几个论坛上读到需要一个lua.pc文件,但是我找不到它。有人知道如何继续吗?

谢谢

编辑:已解决

一些软件包缺失;)

apt-get install liblua5.1-0-dev liblua50-dev liblualib50-dev

原文链接 https://stackoverflow.com/questions/5350086

点赞
stackoverflow用户513763
stackoverflow用户513763

如果要自己编译软件,你应该安装的不仅是运行时(lua5.1),还应该安装开发包(liblua5.1-0-dev)。该包含有 lua5.1.pc 文件。

该文件也在 lua 源分发 中。

2011-03-18 10:42:33
stackoverflow用户3502000
stackoverflow用户3502000

尝试使用下面的命令进行安装: sudo apt-get install liblua5.1-0-dev

2014-04-20 19:30:07
stackoverflow用户3312462
stackoverflow用户3312462

看起来你已经安装了 Lua

缺失的 lua5.1.pc 文件将会在 etc 文件夹里。 要安装其他缺失的包,请尝试下面的命令。

sudo apt-get install libreadline-dev
2014-05-15 06:31:53
stackoverflow用户1847365
stackoverflow用户1847365

在编译luacrypto时,在我的Debian Jessie上遇到了相同的问题。

问题是,在configure.ac文件中,luacrypto尝试如下操作:

PKG_CHECK_MODULES([LUA], [lua])
LUALIBDIR="`$PKGCONFIG --variable=libdir lua`"

问题在于,由于有多个版本可用,您需要指定您想要的版本,这是我的pkg-config -- list-all输出:

root@test-stream:~/luacrypto# pkg-config --list-all|grep -i lua
lua-5.1-c++      Lua - Lua语言引擎
lua-5.1          Lua - Lua语言引擎
lualib50         lua50 - Lua 5.0编程语言的附加库
lua5.1           Lua - Lua语言引擎
lua5.1-c++       Lua - Lua语言引擎
lua51            Lua - Lua语言引擎
lua50            lua50 - Lua 5.0编程语言
lua51-c++        Lua - Lua语言引擎

我只是这样修改luacrypto的顶级configure.ac:

diff --git a/configure.ac b/configure.ac
index b6b9175..20ea20c 100644
--- a/configure.ac
+++ b/configure.ac
@@ -28,10 +28,10 @@ AC_CHECK_FUNCS([memset])

 # pkgconfig
 PKG_CHECK_MODULES([OPENSSL], [openssl])
-PKG_CHECK_MODULES([LUA], [lua])
+PKG_CHECK_MODULES([LUA], [lua5.1])

 # lua libdir
-LUALIBDIR="`$PKGCONFIG --variable=libdir lua`"
+LUALIBDIR="`$PKGCONFIG --variable=libdir lua5.1`"

然后运行autoreconf -i(您需要autoconfautomake),就可以工作了!

2016-05-23 15:28:56