4

嗨我已经下载了lua并解压它并尝试制作它

sg1@kalanamith:~/lua-5.2.1$ make linux test

在那之后嗯得到这个错误

ar rcu liblua.a lapi.o lcode.o lctype.o ldebug.o ldo.o ldump.o lfunc.o lgc.o llex.o     lmem.o lobject.o lopcodes.o lparser.o lstate.o lstring.o ltable.o ltm.o lundump.o lvm.o     lzio.o lauxlib.o lbaselib.o lbitlib.o lcorolib.o ldblib.o liolib.o lmathlib.o loslib.o     lstrlib.o ltablib.o loadlib.o linit.o 
ranlib liblua.a
gcc -O2 -Wall -DLUA_COMPAT_ALL -DLUA_USE_LINUX    -c -o lua.o lua.c    
gcc -o lua   lua.o liblua.a -lm -Wl,-E -ldl -lreadline -lncurses 
/usr/bin/ld: cannot find -lncurses
collect2: ld returned 1 exit status
make[2]: *** [lua] Error 1
make[2]: Leaving directory `/home/sg1/lua-5.2.1/src'
make[1]: *** [linux] Error 2   
make[1]: Leaving directory `/home/sg1/lua-5.2.1/src'
make: *** [linux] Error 2

这是我使用 Lua 的第一天,所以如果有人可以帮助我,我会很开心。先感谢您

4

2 回答 2

6

看起来你错过了ncurses图书馆。确保您已安装所有依赖项,例如通过使用sudo apt-get install libncurses-dev(可能取决于您的系统/版本)。

于 2012-12-26T19:09:50.393 回答
2

应用用于编译 Debian/Ubuntu 软件包的补丁:

Index: lua5.2-5.2.0.obsolete.0.298371916710497/src/Makefile
===================================================================
--- lua5.2-5.2.0.obsolete.0.298371916710497.orig/src/Makefile   2012-05-04 16:27:35.000000000 +0200
+++ lua5.2-5.2.0.obsolete.0.298371916710497/src/Makefile    2012-05-04 16:27:35.000000000 +0200
@@ -103,7 +103,7 @@
 generic: $(ALL)

 linux:
-   $(MAKE) $(ALL) SYSCFLAGS="-DLUA_USE_LINUX" SYSLIBS="-Wl,-E -ldl -lreadline -lncurses"
+   $(MAKE) $(ALL) SYSCFLAGS="-DLUA_USE_LINUX" SYSLIBS="-Wl,-E -ldl -lreadline"

 macosx:
    $(MAKE) $(ALL) SYSCFLAGS="-DLUA_USE_MACOSX" SYSLIBS="-lreadline"

原始来源: http: //patch-tracker.debian.org/patch/series/view/lua5.2/5.2.1-3/no-ncurses-dependency.patch

干杯

于 2012-12-26T23:08:35.857 回答