cannot find lua等问题解决

1.cannot find -llua以及 lua.h no such file 
最好不直接apt-get install lua,从官网下载后(5.1版本,最新版本有没法识别luaL_Reg的问题),make linux & make install
cp  lauxlib.h、lua.h、luaconf.h、lualib.h  /usr/local/include
cp liblua.a /usr/local/lib


安装过程当中可能出现mysql

错误4:

  • /usr/local/lua/lib/liblua.a: could not read symbols: Bad value

看起来是lua调用出错,相关文档提示是提示:64bit环境可能遇到该现象。linux

解决方案:c++

A>. 编辑lua的src/MakeFile文件,修改下列参数:sql

  • CFLAGS= -O2 -Wall $(MYCFLAGS)

修改成:bash

  • CFLAGS= -O2 -Wall -fPIC $(MYCFLAGS)

B>. 按照1.2步骤中所示,编译安装lua。若是以前已经编译过,记得要执行make clean清除已编译配置。session




2.cannot find -lmysqlclient_r 
安装mysql-server mysql-client liblua5.1-sql-mysql-dev


3. 查看机器是否安装某个库:
請善用 bash 的 TAB 自動完成功能
$pkg-config --libs-only-l [TAB][TAB]
libtasn1 xcb-glx
log4net xdamage
lua5.1 xdmcp
lua5.1-c++ xext
lxappearance xextproto
mobile-broadband-provider-info xf86vidmodeproto

mono xfce4-session-2.0app


4,因为64位的问题 可能出现ide

/lib/x86_64-linux-gnu/libpthread.so.0 so try adding it to the linker command line
/lib/x86_64-linux-gnu/libpthread.so.0: could not read symbols: Invalid operation
collect2: error: ld returned 1 exit status

相似错误,须要在makefile中增长-ldl -lpthread参数lua