admin管理员组

文章数量:1391756

I am trying to install luafilesystem.dll 64-bit version for my neovim lua script (I assume that I need 64-bit version because Neovim is 64-bit, correct me if I'm wrong)

I couldn't find precompiled 64-bit version of lua 5.4 that had a static library (lua.lib) so I'm trying to compile the source files by myself.

I downloaded 5.4.2 source files (+ Windows x64 executables and DLL) from: .html

Here is the Lua64 directory where the files are located:

cd                                                                                                   in cmd at 23:13:22
C:\Lua64

tree /f                                                                                                          in cmd at 23:01:02
Folder PATH listing
Volume serial number is B245-895E
C:.
│   lua.exe
│   lua54.dll
│   luac54.exe
│   wlua54.exe
│
├───include
│       lauxlib.h
│       lua.h
│       lua.hpp
│       luaconf.h
│       lualib.h
│
└───src
        config.mak
        lapi.c
        lapi.h
        lauxlib.c
        lauxlib.h
        lbaselib.c
        lcode.c
        lcode.h
        lcorolib.c
        lctype.c
        lctype.h
        ldblib.c
        ldebug.c
        ldebug.h
        ldo.c
        ldo.h
        ldump.c
        lfunc.c
        lfunc.h
        lgc.c
        lgc.h
        linit.c
        liolib.c
        ljumptab.h
        llex.c
        llex.h
        llimits.h
        lmathlib.c
        lmem.c
        lmem.h
        loadlib.c
        lobject.c
        lobject.h
        lopcodes.c
        lopcodes.h
        lopnames.h
        loslib.c
        lparser.c
        lparser.h
        lprefix.h
        lstate.c
        lstate.h
        lstring.c
        lstring.h
        lstrlib.c
        ltable.c
        ltable.h
        ltablib.c
        ltm.c
        ltm.h
        lua.c
        lua.h
        lua.hpp
        lua.ico
        lua.mak
        lua.rc
        lua54.def
        luac.c
        luac.mak
        luaconf.h
        lualib.h
        lua_conf.mak
        lua_dll.rc
        lua_simple.rc
        lundump.c
        lundump.h
        lutf8lib.c
        lvm.c
        lvm.h
        lzio.c
        lzio.h
        Makefile
        Makefile.tecmake
        make_uname
        make_uname.bat
        tecmake.mak
        tecmakewin.mak
        wlua.mak
        wlua.rc
        wlua_x64.manifest
        wlua_x86.manifest
        wmain.c

Compiled the files with the following commands:

cl /Iinclude /O2 /c src\lapi.c src\lauxlib.c src\lstate.c src\lfunc.c src\lgc.c src\lstring.c src\lvm.c src\lzio.c
lib /OUT:lua.lib src\*.obj

When trying to install luafilesystem using luarocks, I get the following error:

luarocks install luafilesystem                                                                                                                                                            in cmd at 22:46:54
Installing .8.0-1.src.rock

luafilesystem 1.8.0-1 depends on lua >= 5.1 (5.4-1 provided by VM: success)

Error: Build error: Lua library at C:\Lua64\lua.lib does not match Lua version 5.4. You can use `luarocks config variables.LUA_LIBDIR <path>` to set the correct location.

luarocks config variables.LUA_LIBDIR is correctly set to "C:\Lua64"

lua.h header file has lua version defines as 5.4.2:

lua -v                                                                                                                                                                                    in cmd at 23:14:33
Lua 5.4.2  Copyright (C) 1994-2020 Lua, PUC-Rio

type lua.h | findstr "#define LUA_VERSION"                                                                         in cmd at 23:09:52
#define lua_h
#define LUA_VERSION_MAJOR       "5"
#define LUA_VERSION_MINOR       "4"
#define LUA_VERSION_RELEASE     "2"

What could be wrong?

本文标签: clLuarocks install luafilesystem lualib does not match Lua versionStack Overflow