如何设置zerobrane studio的环境变量

我将所有的 torch 包都安装到了名为 torch-distro 的本地文件中(按照这个 教程)。我想要使用 Zerobrane 来调试我的代码,但 Zerobrane 找不到我本地的 torch 路径。我该如何将本地路径设置为 Zerobrane 环境变量?

我尝试将 path.lua = "${prefix}/torch-distro/install/bin/luajit" 添加到 user.lua 中,但它无效。

点赞
用户1442917
用户1442917

这些说明针对 Torch 的 Windows 版本,但是如果路径被修改的话,Linux/OSX 版本的步骤也应该是可行的。

假设 Torch 被安装在 C:\Program Files\Torch,那么想要从 ZeroBrane Studio (ZBS) 中以外部解释器的形式运行 Torch,你需要在 <ZBS>\cfg\user.lua 配置文件中添加 path.lua=[[C:\Program Files\Torch\bin\torch-lua]]

现在,当你从 ZBS 中执行 Lua 脚本(Project | RunF6)时,它将在 Torch 环境中运行:

local torch = require 'torch'
local data = torch.Tensor{
   {68, 24, 20},
   {74, 26, 21},
   {80, 32, 24}
}
print(data)

然而,在 Windows 上,还需要进行几个步骤才能启用调试(这些步骤在其他系统中可能不需要,但我没有在那些系统上测试过调试)。ZBS 使用的是 luasocket,在编译时会链接 lua51.dll,但是 Torch 使用的是 libtorch-lua.dll,因此将 luasocket 加载到你的(Torch)进程中可能会导致崩溃。为了使它能够正常工作,你需要构建一个代理 DLL 并将它放入你的 Torch/bin 文件夹中。

要构建代理 DLL,你需要 Visual Studio C++ 或 mingw/gcc 编译,并按照以下步骤:

  1. Lua Proxy DLL3 page 获取 mkforwardlib.lua(VS)或 mkforwardlib-gcc.lua(mingw/gcc)脚本。
  2. 运行 lua mkforwardlib.lua libtorch-lua lua51 X86;如果一切顺利,这将在当前文件夹中生成 lua51.dll 文件。
  3. lua51.dll 文件复制到 Torch\bin 文件夹中。

现在,你应该能够使用 Project | Start Debugging 来调试 Torch 脚本。

2014-10-17 05:44:08
用户936332
用户936332

以下方法适用于 Linux 平台:

  1. 通过将以下代码添加到 user.lua 中配置 luajit 解释器

    path.lua = "your_path/luajit"

  2. 通过将以下代码添加到 /opt/zbsstudio/lualibs/mobdebug/mobdebug.lua 中来配置环境变量

    package.path = package.path .. ';my\_path/?/init.lua' package.cpath = package.cpath .. ';my\_path/?.so'

2014-12-04 08:57:43