因此,事實證明lua for windows安裝了一些較早的2.1版本的luasql,我需要能夠使用luasql 2.2(特別是mysql)。我花了整整一天的時間嘗試着用luarocks來安裝這個東西,但是一直在打牆。這是我打過的第三面牆,但是第一面我根本不知道從哪裏開始。將luasql 2.2與luarocks安裝到lua上以安裝windows
我運行:luarocks安裝luasql-mysql的MYSQL_DIR =「E:/程序/ MySQL的/ MySQL服務器5.5」
它經歷和輸出(刪除了很多地方,它只是重複同樣的事情的輸出,但不同的文件):
Extracting luasql-2.2.0\src\jdbc
Extracting luasql-2.2.0\src\jdbc\Makefile
... (lots of these here)
Extracting luasql-2.2.0\vc6\sqlite.def
Everything is Ok
Folders: 17
Files: 84
Size: 358091
Compressed: 440320
cl /MD /O2 -c -Fosrc/luasql.obj -IF:/Code/Lua/5.1/include src/luasql.c -IE:/Prog
rams/MySQL/MySQL Server 5.5/include
Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 16.00.30319.01 for 80x86
Copyright (C) Microsoft Corporation. All rights reserved.
luasql.c
cl /MD /O2 -c -Fosrc/ls_mysql.obj -IF:/Code/Lua/5.1/include src/ls_mysql.c -IE:/
Programs/MySQL/MySQL Server 5.5/include
Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 16.00.30319.01 for 80x86
Copyright (C) Microsoft Corporation. All rights reserved.
ls_mysql.c
e:\programs\mysql\mysql server 5.5\include\mysql_com.h(291) : error C2061: synta
x error : identifier 'SOCKET'
e:\programs\mysql\mysql server 5.5\include\mysql_com.h(337) : error C2059: synta
x error : '}'
... (lots of these here, same errors just different lines)
E:/Programs/MySQL/MySQL Server 5.5/include\mysql.h(374) : error C2143: syntax er
ror : missing '{' before '*'
E:/Programs/MySQL/MySQL Server 5.5/include\mysql.h(374) : fatal error C1003: err
or count exceeds 100; stopping compilation
Error: Build error: Failed compiling object src/ls_mysql.obj
任何想法從哪裏開始?我必須a)安裝獨立的mysql(以前使用WAMP附帶的一個,因爲我之前已經使用過),並且b)安裝visual studio 2010(迄今爲止的c#和C++版本),以及c)使用visual studio命令提示符運行luarocks的東西,如果我使用常規命令問題,它會在這之前破壞方式。
我希望這是一個簡單的問題,以解決熟悉編譯C這是這似乎是做什麼的人。