2017/11/22(水) [n年前の日記]
#1 [lua][windows] luarocksとluacheckをWindowsにインストール
luarocksなるものをインストールすると、lua関係の便利なアレコレが簡単にインストールできるようになるらしい。更に、luarocks を使って luacheck をインストールすることで、luaのソースファイルを静的チェックできるようで。試しにWindows10 x64上でインストールしてみようかなと。
以下を参考にして作業。
_にっき♪: luacheck
_LuaとLuaRocksのWindowsインストール
_Installation instructions for Windows - luarocks/luarocks Wiki
以下を参考にして作業。
_にっき♪: luacheck
_LuaとLuaRocksのWindowsインストール
_Installation instructions for Windows - luarocks/luarocks Wiki
◎ luarocksをインストール。 :
インストールには、Lua とリンクライブラリとやらが必要。以下の2つを
_Lua Binaries Download
からDLして解凍。インストール。
また、途中でコンパイルをするから、Visual Studio が必要になるっぽい。自分の環境は Visual Studio 2015 Community をインストールしてあるので、スタートメニューから、開発者コマンドプロンプトを実行して、その上で作業した。
_LuaRocks releases から、luarocks-2.4.3-win32.zip をDL、解凍。luaにPATHが通ってる状態で以下を打って luarocks をインストール。
気を利かせたつもりで、事前にLuaRocksインストール場所を作成しておくと、「指定されたフォルダが既にあるからインストールできねえ」と文句を言われる。事前に作成しないほうがヨサゲ。
luarocks.bat その他が作られた。環境変数 PATH に通しておく。
lua-5.3.4_Win32_bin.zip lua-5.3.4_Win32_dllw4_lib.zip
また、途中でコンパイルをするから、Visual Studio が必要になるっぽい。自分の環境は Visual Studio 2015 Community をインストールしてあるので、スタートメニューから、開発者コマンドプロンプトを実行して、その上で作業した。
_LuaRocks releases から、luarocks-2.4.3-win32.zip をDL、解凍。luaにPATHが通ってる状態で以下を打って luarocks をインストール。
install /LUA Luaインストール場所\ /P LuaRocksインストール場所今回は以下のフォルダを指定。
install /LUA D:\Dev\lua_x86\ /P D:\Dev\luarocks
気を利かせたつもりで、事前にLuaRocksインストール場所を作成しておくと、「指定されたフォルダが既にあるからインストールできねえ」と文句を言われる。事前に作成しないほうがヨサゲ。
luarocks.bat その他が作られた。環境変数 PATH に通しておく。
◎ luacheckをインストール。 :
luarocks install luacheck で、luacheck がインストールできるはずなのだけど…。
lfs.dll とやらが作れないぞ、と怒られてしまった。
_installing on windows fails with LNK1107 (lua 5.2) - Issue #82 - keplerproject/luafilesystem
Visual Studio 2015 (VC14) と一致する何かしらのファイル群が必要らしい…。
_LuaBinaries - Browse /5.3.4/Windows Libraries/Static から、lua-5.3.4_Win32_vc14_lib.zip をDLして解凍。Luaインストール場所にコピー。どうも lua53.lib というファイルが必要だったらしい。
luarocksインストール場所\config-5.3.lua の修正も必要。中の一部を以下に変更。
この状態で再度インストールを試す。
Luaインストール場所\systree\bin\luacheck.bat ができた。Luaインストール場所の直下にコピー。
D:\Dev\lua_x86>luarocks install luacheck Installing https://luarocks.org/luacheck-0.21.2-1.src.rock Missing dependencies for luacheck 0.21.2-1: luafilesystem >= 1.6.3 (not installed) luacheck 0.21.2-1 depends on luafilesystem >= 1.6.3 (not installed) Installing https://luarocks.org/luafilesystem-1.7.0-2.src.rock cl /nologo /MD /O2 -c -Fosrc/lfs.obj -ID:/Dev/lua_x86/include src/lfs.c lfs.c link -dll -def:lfs.def -out:lfs.dll D:/Dev/lua_x86/lua53.dll src/lfs.obj Microsoft (R) Incremental Linker Version 14.00.24215.1 Copyright (C) Microsoft Corporation. All rights reserved. D:\Dev\lua_x86\lua53.dll : fatal error LNK1107: ファイルが無効であるか、または壊れています: 0x330 を読み取れません。 Error: Failed installing dependency: https://luarocks.org/luafilesystem-1.7.0-2.src.rock - Build error: Failed compiling module lfs.dll
lfs.dll とやらが作れないぞ、と怒られてしまった。
_installing on windows fails with LNK1107 (lua 5.2) - Issue #82 - keplerproject/luafilesystem
Visual Studio 2015 (VC14) と一致する何かしらのファイル群が必要らしい…。
_LuaBinaries - Browse /5.3.4/Windows Libraries/Static から、lua-5.3.4_Win32_vc14_lib.zip をDLして解凍。Luaインストール場所にコピー。どうも lua53.lib というファイルが必要だったらしい。
luarocksインストール場所\config-5.3.lua の修正も必要。中の一部を以下に変更。
LUALIB = 'lua53.dll' ↓ LUALIB = 'lua53.lib'
この状態で再度インストールを試す。
luarocks install luafilesystem luarocks install luacheck
Luaインストール場所\systree\bin\luacheck.bat ができた。Luaインストール場所の直下にコピー。
◎ 動作確認。 :
luacheck hoge.lua でチェックができる。
が、love2d用のluaソースを渡すと、「loveって何だ? そんなの知らねえよ!」と山ほど怒られる。これでは…使えないな…。
が、love2d用のluaソースを渡すと、「loveって何だ? そんなの知らねえよ!」と山ほど怒られる。これでは…使えないな…。
この記事へのツッコミ
[ ツッコミを読む(2) | ツッコむ ]
以上です。
本記事を参考にLuaの導入をしようとしています.(Win10 62bit版 VS2017)です)
installコマンドをコマンドプロンプト上で実行できません.
PATHを通せばいいのかな,と考え調べてみたのですがwingetのサブコマンドとしてのinstallしか出てきません.
もしよろしければ>install /LUA path /P PATHの部分をどのように実行されているかお教えいただけませんでしょうか?
luarocks-2.4.3-win32.zip を解凍すると、中に install.bat が入っていて、当時はソレを呼び出してインストール処理をしていたようです。
luarocks-x.x.x-windows-32.zip ではなくて、
luarocks-x.x.x-win32.zip を入手する必要があります。
> install /LUA path /P PATHの部分をどのように実行されているか
記事中にもメモしてありますが以下の指定で実行していたようです。
install /LUA D:\Dev\lua_x86\ /P D:\Dev\luarocks
D:\Dev\lua_x86\ に lua.exe その他が既に入っていて、
D:\Dev\luarocks\ に luarocks をインストールしようとしています。
ただ、私自身は、後々 hererocks というツールを使って
Lua と Luarocks をビルドして使う形に移行したようです…。
2021/06/19頃の日記に、その旨メモしてありました…。