2011-03-18 48 views
27

我試圖安裝LsyncdUbuntu的LTS 10.4,但我得到一些錯誤:沒有包「LUA」找到,但我把它安裝

> 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 
+3

如果您使用的是Lua 5.1,則不需要'50'。這些是爲Lua 5.0。 – jpjacobs 2012-01-09 08:33:09

回答

28

如果自己編譯的軟件,你應該安裝不僅運行時(lua5.1),但還有開發包(liblua5.1-0-dev)。該軟件包包含lua5.1.pc文件。

它也在lua source distribution

5

嘗試 sudo apt-get install liblua5.1-0-dev

0

看來你已經安裝了的Lua

缺少lua5.1.pc文件將存在於文件夾 要安裝其他失蹤包試試下面的命令

sudo apt-get install libreadline-dev 
4

我對我的Debian傑西遇到了同樣的問題,而試圖編譯luacrypto。

的問題是,在configure.ac,luacrypto嘗試以下操作:

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

的問題是,因爲有多個可用的版本,你需要指定你想要哪一個,這裏是我的輸出pkg配置--list全:

[email protected]:~/luacrypto# pkg-config --list-all|grep -i lua 
lua-5.1-c++  Lua - Lua language engine 
lua-5.1   Lua - Lua language engine 
lualib50   lua50 - The Lua 5.0 programming language addon libraries 
lua5.1   Lua - Lua language engine 
lua5.1-c++  Lua - Lua language engine 
lua51   Lua - Lua language engine 
lua50   lua50 - The Lua 5.0 programming language 
lua51-c++  Lua - Lua language engine 

我只是修改頂級configure.ac爲luacrypto這樣:

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(你需要autoconf & automake),它的工作原理!

+0

你是我的英雄! – sidoh 2017-04-29 15:54:38

相關問題