lua链接动态库
到lua/src目录下
make clean
make linux
问题:
gcc -O2 -Wall -fPIC -DLUA_USE_LINUX -c -o lua.o lua.c
In file included from lua.h:16:0,
from lua.c:15:
luaconf.h:275:31: 致命错误: readline/readline.h:没有那个文件或目录
编译中断。
make[1]: *** [lua.o] 错误 1
make[1]:正在离开目录 `/home/farsight/Dev/ThirldLib/lua-5.1.5/src’
make: *** [linux] 错误 2
解决:
sudo apt-get install libreadline6-dev
再次
make clean
make linux
又出现新的问题
ar: u' 修饰符被忽略,因为
D’ 为默认(参见 `U’)
ranlib liblua.a
gcc -O2 -Wall -DLUA_USE_LINUX -c -o lua.o lua.c
gcc -o lua lua.o liblua.a -lm -Wl,-E -ldl -lreadline -lhistory -lncurses
解决:
安装readline文件、 ncurses
wget -c ftp://ftp.gnu.org/gnu/readline/readline-6.2.tar.gz
tar -zxvf readline-6.2.tar.gz
cd readline-6.2
./configure //这个地方一定要指定路径,要不然要报错(一般在/usr/local下用软件命名,比如 /usr/local/readline下)
make && make installl
ldconfig
或:
yum -y install readline-devel ncurses-devel
sudo apt-get install libncurses5-dev libncursesw5-dev
或
wget https://ftp.gnu.org/pub/gnu/ncurses/ncurses-6.1.tar.gz
解压 tar 文件:$ tar xzf ncurses-6.1.tar.gz
这将在当前目录中创建一个名为 ncurses-6.1 的文件夹。cd 到该目录:$ cd ncurses-6.1$ ./configure --prefix=/opt/ncurses
最后,使用以下命令进行编译和安装:$ make$ sudo make install
使用命令验证安装:$ ls -la /opt/ncurses
再次运行,如果没报错误就是没错
看src目录下是否有liblua.so liblua.a 文件