在尝试编译Lua以供Emscripten使用时遇到障碍,使用Windows,"unable to find ar rcu"



我在这个问题上纠缠了好几个小时,没有找到任何解决方案。我目前正在尝试为Emscripten编译lua 5.3.4,以便在我的项目中使用。我遇到了一个障碍,我需要把它编译成liblua.a文件,以后在执行emcc命令行时会用到它。但也存在问题。这是控制台输出和我所做的。我已经把它输出到了.o文件。我该怎么把这些放进

E:codeliblua>make generic CC="emcc -s WASM=1"
cd src && make generic
make[1]: se ingresa al directorio `E:/code/liblua/src'
ar rcu liblua.a lapi.o lcode.o lctype.o ldebug.o ldo.o ldump.o lfunc.o lgc.o llex.o lmem.o 1lobject.o lopcodes.o lparser.o lstate.o lstring.o ltable.o ltm.o lundump.o lvm.o lzio.o lauxlib.o lbaselib.o lbitlib.o lcorolib.o ldblib.o liolib.o lmathlib.o loslib.o lstrlib.o ltablib.o lutf8lib.o loadlib.o linit.o
process_begin: CreateProcess(NULL, ar rcu liblua.a lapi.o lcode.o lctype.o ldebug.o ldo.o ldump.o lfunc.o lgc.o llex.o lmem.o lobject.o lopcodes.o lparser.o lstate.o lstring.o ltable.o ltm.o lundump.o lvm.o lzio.o lauxlib.o lbaselib.o lbitlib.o lcorolib.o ldblib.o liolib.o lmathlib.o loslib.o lstrlib.o ltablib.o lutf8lib.o loadlib.o linit.o, ...) failed.
make (e=2): El sistema no puede encontrar el archivo especificado. (system cannot find the specified file)
make[1]: *** [liblua.a] Error 2
make[1]: se sale del directorio `E:/code/liblua/src'
make: *** [generic] Error 2

它说它找不到arcu,我该如何在我的系统上使用它?

作为参考,我尝试使用的系统可以在这里找到https://github.com/vvanders/wasm_lua如果需要

看起来makefile需要Un*x工具,所以我建议:

  • 安装Windows Subsystem for Linux 2(WSL2(
  • 在WSL2中安装Ubuntu 20.04发行版
  • 双击Ubuntu 20.04 LTS图标启动bash shell
  • 在bash shell中,安装所需的工具。这个问题的最小集合可以是:
    sudo apt install g++ binutils make libc-bin
    。。。或更完整的软件包:
    sudo apt install build-essential
  • lua分发版(作为自己,而不是root用户(解压到主目录中的某个位置,然后尝试构建

最新更新