Torch7在Windows8.1上安装,转载请注明出处

出处http://blog.163.com/lrf_pop/blog/static/62231044201669102331890/


要求:Lua 版本5.1,torch7 commit   2cd59e1
前提:安装MinGW和MSYS
1 Windows安装Lua教程参考http://www.thijsschreijer.nl/blog/?p=863
   1〉安装Lua
         下载Lua5.1.5 http://www.lua.org/ftp/lua-5.1.5.tar.gz
        以下lua安装目录用${LUA_DIR}代替
         解压后编译
         $ make clean
         $ make mingw
         $ make install INSTALL_TOP=%${LUA_DIR}不要带空格% TO_BIN="lua.exe luac.exe lua51.dll"
         把%LUA_DIR%\bin配置到环境变量Path
         下面一会会用到
         把%LUA_DIR%\include配置到环境变量LUA_INCDIR
         把%LUA_DIR%\bin配置到环境变量LUA_BINDIR
         把%LUA_DIR%\bin配置到环境变量LUA_LIBDIR  这个有点问题
         重新打开命令行,输入lua应该可以执行命令
         $ lua -e "print('hello world')"  检查lua是否安装成功并且配置正确
    2〉安装LuaRocks 
          下载luarocks-2.3.0-win32   参考网址https://codeload.github.com/keplerproject/luarocks/zip/master
          一定要win32版本
          解压后编译
          $ install /MW /F /LV 5.1
          现在会弹出第二个窗口, 记住里面的环境变量再关闭
          参考配置
          LUA_PATH=C:\Program Files (x86)\LuaRocks\lua\?.lua;C:\Program Files (x86)\LuaRocks\lua\?\init.lua;%LUA_DIR%\share\lua\5.1\?.lua;%LUA_DIR%\share\lua\5.1\?\init.lua;%LUA_DIR% \lib\luarocks\rocks\cwrap\scm-1\lua\torchcwrap.lua
          红字现在不配,安装torch时配置
          LUA_CPATH=F:\MinGW\usr\local\lua-5.1.5\lib\lua\5.1\?.dll
          Path里面加上luarocks的位置
          重新打开命令行,luarocks help验证luarocks是否安装成功
          如果你没有lua基础
          建议安装
          $ luarocks install luafilesystem
          $ lua -l lfs #验证是否安装成功
          或者
          $ lua
          $ lua>require "lfs" #验证是否安装成功, 这个方式验证很重要,可以验证后需要安装是否缺少什么包
          和
          $ luarocks install luasocket
          $ lua -l socket  #验证是否安装成功  
          $ lua
          $ lua>require "socket" #验证是否安装成功
2 Windows安装Lua教程参考https://github.com/torch/torch7/pull/287 
   以下是两种torch包的安装方式,如果你用第一种方式安装不能在lua里面
   1〉LuaRocks安装torch/cwrap
         $ luarocks --server=https://raw.github.com/torch/rocks/master install cwrap
         应该不会有什么问题
         $ lua
         $ lua>require "cwrap" #验证是否安装成功
   2〉Mingw安装torch/paths
         下载 paths-master https://codeload.github.com/torch/paths/zip/master
         解压后并MinGW编译
         $ cmake -E make_directory build   #直接建这个目录页可以
         $ cd build
         $ cmake ..  -G "MSYS Makefiles" -DCMAKE_BUILD_TYPE=Release -DLUALIB=lua51.dll -DLUA_INCDIR=%LUA_INCDIR% -DLUA_LIBDIR=%LUA_INCDIR%  -DLUADIR=" %LUA_DIR% /lib/luarocks/rocks/paths/scm-1/lua" - DLIBDIR=" %LUA_DIR% /lib/luarocks/rocks/paths/scm-1/lib" -DCMAKE_INSTALL_PREFIX=" %LUA_DIR%/lib/luarocks/rocks/paths/scm-1"
红字部分配置是为了和安装包里面rocks\ paths-scm-1.rockspec里面说明一致
绿字可以更换为"MinGW Makefiles"
蓝字是Lua安装目录
         $ make
         $ make install
 3 安装torch7
    1> 下载torch7 https://codeload.github.com/torch/torch7/zip/master
    2>解压编译安装
        $ cmake -E make_directory build   #直接建这个目录页可以
         $ cd build
         $ cmake .. -G "MSYS Makefiles" -DCMAKE_BUILD_TYPE=Release -DLUALIB=lua51.dll -DLUA_INCDIR=%LUA_INCDIR% -DLUA_LIBDIR=%LUA_LIBDIR% -DLUA="%LUA_DIR%/bin/lua"
         $ make #这一部分问题比较多:
         1.如果提示local can only be used in a function 说明没有指定lua.exe的位置,即绿字部分
         2.如果提示require "torchcwrap" 找不到,则在torch包下,找到torchcwrap.lua并配置到LUA_PATH环境变量下,如上所示
         $ make install
         安装完成后把libluaT.dll,libTH.dll,libtorch.dll都拷贝到bin目录下(或者拷贝到LUA_CPATH下,没试)
        验证是否成功
        $ lua -l torch
        或者
        $ lua
        $ lua>require "torch" #验证是否安装成功

你可能感兴趣的:(Torch7在Windows8.1上安装,转载请注明出处)