在 Ubuntu 上安装 luaSQL

Install luaSQL on Ubuntu

TL;DR: 你可以跳到 。我试图使用 luarocks 安装程序,但 apt-get 安装程序没有问题。


我在 Ubuntu 上安装 luaSQL 时遇到问题。我需要它用于使用 luasql = require "luasql.mysql" 的脚本。我遵循了可以在这里找到的官方文档:http://keplerproject.github.io/luasql/doc/us/
我尝试过的(以及官方文档建议的):

sudo luarocks install luasql-mysql

给我以下输出:

Error: Could not find expected file mysql.h for MYSQL -- 
you may have to install MYSQL in your system and/or pass MYSQL_DIR or 
MYSQL_INCDIR to the luarocks command. Example: luarocks install luasql-mysql
MYSQL_DIR=/usr/local

所以我首先必须得到 mysql.h 文件。经过一番谷歌搜索后,我发现 this:

sudo apt-get update
sudo apt-get install libmysqlclient-dev 

所以我再次尝试了我的第一个命令,但是使用 mysql.h 文件的位置作为参数:

sudo luarocks install luasql-mysql MYSQL_DIR=/usr/include/mysql

它给了我和开始时一样的错误。 有谁知道在 Ubuntu 机器上安装 luaSQL 的正确说明?或者可以指出正确的方向吗?


我的系统:
说明:Ubuntu 14.04.2 LTS
发布:14.04
代号:trusty

安装 LuaSQL:

apt-get install lua-sql-mysql

感谢用户 'TsT' 来自 lua-support 的 irc 聊天:聊天记录可以在这里找到:https://botbot.me/freenode/lua-support/msg/50072546/


您可以使用的测试脚本:

luasql = require "luasql.mysql"

env = assert (luasql.mysql())
con = assert (env:connect("dbname","username","password","host.com"))
cur = assert (con:execute("INSERT INTO `table`(`col_int`,`col_varchar`) VALUES (9,'Hi')"))

apt 安装程序没有为我安装。

我能够通过修改配置文件从 github (keplerproject/luasql) 上的源代码安装它。 Lua 5.2 被硬编码在配置文件中,但我是 运行 5.1.

在配置文件中,将 LUA_SYS_VER ?= 5.2 替换为 LUA_SYS_VER ?= 5.1

我不得不使用 MYSQL_INCDIR

sudo luarocks install luasql-mysql MYSQL_INCDIR=/usr/include/mysql

因为失败 MYSQL_DIR

如果要手动安装:

apt-get install -y libmysqlclient-dev git
luarocks install luasql-mysql MYSQL_INCDIR=/usr/include/mysql