无法确定lua包含目录。

我正在尝试在Windows 8 RP中安装Luabind。目前为止,我已经完成以下工作:

  • 我的Visual Studio是2012 RC版本。
  • 我已经安装了LuaforWindows 5.1.4
  • 我已经下载了luabind-0.9.1
  • 我已经下载了luabind所需的boost_1_51_0
  • 我成功安装了BOOST
  • 我在BOOST_ROOT环境变量中设置了Bjam的路径
  • 我在LUA_PATH环境变量中设置了Lua的路径

现在,当我在Luabind目录中尝试运行bjam时,会出现以下错误信息。

error: at Jamroot:41 error:
*** Unable to determine Lua include directory.

我不明白为什么Jamroot无法找到Lua目录的路径。我也尝试将路径包括在我的PATH环境变量中,而不仅仅是在LUA_PATH环境变量中。

我已经连续搜索了三天了。我还尝试了以下这种方法,但仍然没有帮助。

如果有人知道我做错了什么,请让我知道我做错了什么。

点赞
用户1201210
用户1201210

以下是 luabind-0.9.1 的 jamroot 代码,大约在第41行:

LUA_PATH = [ os.environ LUA_PATH ] ;

if ! $(LUA_PATH)
{
    errors.user-error "*** LUA_PATH must be set." ;
}

local includes = [ GLOB $(LUA_PATH)/include $(LUA_PATH)/src : lua.h ] ;

if ! $(includes)
{
    errors.user-error "*** Unable to determine Lua include directory." ;
}

看起来你已经设置了 LUA_PATH 环境变量,因为没有收到错误信息,但是 bjam 找不到 %LUA_PATH%/include%LUA_PATH%/src 文件夹里的 lua.h

我以前也遇到过类似的 LUA_PATH 问题,最后是将 LUA_DEV 的值暂时复制到 LUA_PATH 里以使一些工具能够正常工作。检查一下你的变量,然后考虑进行这个值的复制,直到 luabind 构建成功为止。


注:我正在使用较旧的 Boost 版本,但我希望构建工作方式相同。以下是 Lua 安装程序配置的环境变量。注意,LUA_PATH 没有指向 Lua\5.1 目录,这也是我需要暂时更改它的原因。

LUA_PATH=;;C:\Program Files\Lua\5.1\lua\?.luac

LUA_DEV=C:\Program Files\Lua\5.1

2012-10-05 00:08:12