Lua 스크립트가 새 Windows 10 장치에서 파일을 찾을 수 없습니다

Lua 스크립트가 새 Windows 10 장치에서 파일을 찾을 수 없습니다

저는 몇몇 친구들과 협동 에뮬레이터 경험을 설정하려고 노력해 왔습니다(에뮤쿱그리고비즈호크 협동조합둘 다 동일한 증상을 나타내는 서로 다른 두 가지입니다). 내 이전 컴퓨터에서는 다운로드 및 실행이 제대로 작동했습니다. 그러나 새 컴퓨터를 만들고 Windows 7에서 Windows 10으로 옮겼습니다(관련이 있는지 확실하지 않음).

이제 Lua를 사용하는 스크립트를 실행하려고 하면 내 모듈을 찾을 수 없다는 예외가 발생합니다.

NLua.Exceptions.LuaScriptException: [string "main"]:35: module 'bizhawk-co-op\sync' not found:
    no field package.preload['bizhawk-co-op\sync']
    no file 'C:\Users\Kevin\Desktop\Randomizer Stuff\Snes 9x COOP\coop-full-1key14-1\coop'
    no file 'C:\Users\Kevin\Desktop\Randomizer Stuff\Snes 9x COOP\coop-full-1key14-1\coop\modes'
    no file 'C:\Users\Kevin\Desktop\Randomizer Stuff\Snes 9x COOP\coop-full-1key14-1\coop\pl'
    no file 'C:\Users\Kevin\Desktop\Randomizer Stuff\Snes 9x COOP\coop-full-1key14-1\coop\socket'
    no file '.\bizhawk-co-op\sync.dll'
    no file 'C:\Users\Kevin\Desktop\BizHawk-2.3\bizhawk-co-op\sync.dll'
    no file 'C:\Users\Kevin\Desktop\BizHawk-2.3\loadall.dll'

파일 sync.lua이 존재하는 것 같은데, 대신 구체적으로 DLL 파일을 찾고 있는 것 같습니다. 인터넷 검색을 많이 했는데 비슷한 문제를 찾을 수 없는 것 같습니다.

방금 구축한 독립형 Lua 설치에서도 동일한 문제가 발생한다는 점은 주목할 가치가 있습니다.

C:\Users\Kevin\Desktop\Randomizer Stuff\Snes 9x COOP\coop-full-1key14-1>lua coop\coop.lua
lua: coop\coop.lua:1: module 'pl.class' not found:
        no field package.preload['pl.class']
        no file 'C:\Users\Kevin\Desktop\Randomizer Stuff\Snes 9x COOP\coop-full-1key14-1\coop'
        no file 'C:\Users\Kevin\Desktop\Randomizer Stuff\Snes 9x COOP\coop-full-1key14-1\coop\modes'
        no file 'C:\Users\Kevin\Desktop\Randomizer Stuff\Snes 9x COOP\coop-full-1key14-1\coop\pl'
        no file 'C:\Users\Kevin\Desktop\Randomizer Stuff\Snes 9x COOP\coop-full-1key14-1\coop\socket'
        no file 'C:\Users\Kevin\Desktop\lua-5.3.5.tar\lua\bin\pl\class.dll'
        no file 'C:\Users\Kevin\Desktop\lua-5.3.5.tar\lua\bin\..\lib\lua\5.3\pl\class.dll'
        no file 'C:\Users\Kevin\Desktop\lua-5.3.5.tar\lua\bin\loadall.dll'
        no file '.\pl\class.dll'
        no file 'C:\Users\Kevin\Desktop\lua-5.3.5.tar\lua\bin\pl.dll'
        no file 'C:\Users\Kevin\Desktop\lua-5.3.5.tar\lua\bin\..\lib\lua\5.3\pl.dll'
        no file 'C:\Users\Kevin\Desktop\lua-5.3.5.tar\lua\bin\loadall.dll'
        no file '.\pl.dll'
stack traceback:
        [C]: in function 'require'
        coop\coop.lua:1: in main chunk
        [C]: in ?

답변1

분명히 이것은 PATH가 엉망이라는 것을 보여주는 정말 끔찍한 방법입니다. 특히 LUA_PATH라는 환경 변수를 사용하면 수행하려는 작업이 무시되는 것처럼 보였습니다. 좋아요.

관련 정보