1,安装mingw64

先下载mingw64压缩包(不建议下载exe安装包,在线安装太慢),地址如下:

https://nchc.dl.sourceforge.net/project/mingw-w64/Toolchains%20targetting%20Win64/Personal%20Builds/mingw-builds/8.1.0/threads-posix/seh/x86_64-8.1.0-release-posix-seh-rt_v6-rev0.7z

下载之后解压到某路径,然后将其中的bin路径添加至系统path路径,例如E:\Program Files\mingw64\bin

检查是否安装成功:

C:\Users\cord>gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=E:/Program\ Files/mingw64/bin/../libexec/gcc/x86_64-w64-mingw32/8.1.0/lto-wrapper.exe
Target: x86_64-w64-mingw32
......
Thread model: posix
gcc version 8.1.0 (x86_64-posix-seh-rev0, Built by MinGW-W64 project)

2,编译安装luajit

下载luajit:http://luajit.org/download/LuaJIT-2.1.0-beta3.zip

解压LuaJIT-2.1.0-beta3.zip并用cmd进入文件夹执行编译命令mingw32-make

E:\>cd LuaJIT-2.1.0-beta3

E:\LuaJIT-2.1.0-beta3>mingw32-make
"==== Building LuaJIT 2.1.0-beta3 ===="
mingw32-make -C src
mingw32-make[1]: Entering directory 'E:/LuaJIT-2.1.0-beta3/src'
"HOSTCC host/minilua.o"
.......
"CC lj_lib.o"
"CC lj_alloc.o"
lj_alloc.c:154:14: warning: 'DIRECT_MMAP' defined but not used [-Wunused-function]
static void *DIRECT_MMAP(size_t size)
^~~~~~~~~~~
...
"CC lib_init.o"
"DYNLINK lua51.dll"
"CC luajit.o"
"BUILDVM jit/vmdef.lua"
"LINK luajit.exe"
"OK Successfully built LuaJIT"
mingw32-make[1]: Leaving directory 'E:/LuaJIT-2.1.0-beta3/src'
"==== Successfully built LuaJIT 2.1.0-beta3 ===="

编译完成之后,将src下面的luajit.exelua51.dll两个文件拷贝到新建的E:/LuaJIT文件夹下面,并将src下面的jit文件夹拷贝到E:/LuaJIT/lua下面,整体目录结构如下:

E:\>tree /F luajit
卷 E 的文件夹 PATH 列表
卷序列号为 5EA5-2C1D
E:\LUAJIT
│ lua51.dll
│ luajit.exe

└─lua
└─jit
bc.lua
bcsave.lua
dis_arm.lua
dis_arm64.lua
dis_arm64be.lua
dis_mips.lua
dis_mips64.lua
dis_mips64el.lua
dis_mipsel.lua
dis_ppc.lua
dis_x64.lua
dis_x86.lua
dump.lua
p.lua
v.lua
vmdef.lua
zone.lua

最后将E:/LuaJIT加入path路径。

检验安装结果:

C:\Users\cord>luajit -v
LuaJIT 2.1.0-beta3 -- Copyright (C) 2005-2017 Mike Pall. http://luajit.org/

测试:

创建一个lua脚本test.lua

print("hello world")

然后使用luajit进行编译生成bytecode :

E:\Test\lua>luajit -b test.lua 1.lua

会发现路径下生成了1.lua的文件

:如果使用luajit的时候出现luajit: unknown luaJIT command or jit.* modules not installed的错误,说明lua模块放置的路径有问题,可以通过luajit -e "require('jit.bcsave')"命令测试一下luajit的模块搜索路径:

E:\Test\lua>luajit -e "require('jit.bcsave')"
luajit: (command line):1: module 'jit.bcsave' not found:
no field package.preload['jit.bcsave']
no file '.\jit\bcsave.lua'
no file 'E:\LuaJIT\lua\jit\bcsave.lua'
no file 'E:\LuaJIT\lua\jit\bcsave\init.lua'
no file '.\jit\bcsave.dll'
no file 'E:\LuaJIT\jit\bcsave.dll'
no file 'E:\LuaJIT\loadall.dll'
no file '.\jit.dll'
no file 'E:\LuaJIT\jit.dll'
no file 'E:\LuaJIT\loadall.dll'
stack traceback:
[C]: in function 'require'
(command line):1: in main chunk
[C]: at 0x00402060

也就是安装后的jit文件夹最好放到编译包luajit.exe的同级包的lua文件夹下

参考链接:

https://tutel.me/c/programming/questions/44166483/luajit+on+windows+10+unknown+luajit+command+or+jit

https://blog.csdn.net/mydreamremindme/article/details/51372391

windows安装mingw和LuaJIT的更多相关文章

  1. MinGW x64 for Windows安装

    1. 百度搜索MinGW gcc 或直接登录 MinGW gcc官网 http://www.mingw.org/ 2.选择左侧download链接,进入下载页面 3.下载安装包mingw-get-se ...

  2. Windows下MinGW编译Qt4

    还真不是吹,这个问题折磨我一天……前些天转载了一篇关于<Eclipse+Qt开发环境设置>和<Eclipse+MinGW+Qt开发环境设置>两片文章,里面讲述了QT的开源版本q ...

  3. windows+CMake+mingw 搭建c c++开发环境

    layout: post title: "windows+CMake+mingw 搭建c c++开发环境" date: 2018-03-30 22:23:06 tags: wind ...

  4. win10 安装mingw ruby rails

    原文可以参考 https://ruby-china.org/topics/17581 在window10 安装ruby rails https://rubyinstaller.org/download ...

  5. .windows安装使用这些偏底层的Python扩展太

    .windows安装使用这些偏底层的Python扩展太不爽了,怎么彻底解决 error: Unable to find vcvarsall.bat呢? 1.不要按网上说的,安装MinGW,然后在“.. ...

  6. 手动安装minGW

    minGW是C语言编译包,将GCC编译器在Windows平台上编译软件提供支持. 手工安装minGW是一件很繁琐的事情,但是搞懂它很有用,因为C语言本身是一个很小的语法系统,全靠 各种库在支持,安装m ...

  7. Ubuntu下可以直接安装mingw(sudo apt-get install mingw32 mingw32-binutils mingw32-runtime,附例子,简单好用,亲测成功)good

    Mingw:在Linux系统下编译Windows的程序 Ubuntu下可以直接安装:sudo apt-get install mingw32 mingw32-binutils mingw32-runt ...

  8. windows安装theano和keras

    系统: Windows 2008 python版本: Anaconda3 1. theano 安装 pip install theano 2. 安装g++ 下载安装mingw, 推荐版本tdm64-g ...

  9. Windows安装C的编译环境

    对于java开发者来说安装C的编译环境不是非常熟悉,因此本文对C的安装环境进行介绍以及windows编译Redis和Zookeeper的过程.MinGW主要用于按照gcc.make等环境,cywin用 ...

随机推荐

  1. Java内存映射,上G大文件轻松处理

    内存映射文件(Memory-mapped File),指的是将一段虚拟内存逐字节映射于一个文件,使得应用程序处理文件如同访问主内存(但在真正使用到这些数据前却不会消耗物理内存,也不会有读写磁盘的操作) ...

  2. Java相关|Code Review Checklist(Server)

    安全 所有入参均经过校验,包括验证参数数据类型.范围.长度,尽可能采用白名单形式验证所有的输入.对于非法请求,记录WARN log.参考Input Validation Cheat Sheet:前后端 ...

  3. python历史背诵

    一.python简介 python2:源代码不统一 有重复功能的代码 默认编码是ascii 没有中文 输出中文需要用头文件 #-*-coding=utf-8-*- 进行转换 py3:源代码统一 没有重 ...

  4. 彻底搞懂Java中equals和==的区别

    java当中的数据类型和“==”的含义: 1.基本数据类型(也称原始数据类型) :byte,short,char,int,long,float,double,boolean.他们之间的比较,应用双等号 ...

  5. 02 http和https协议

    1. HTTP协议 简介 HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写, 是用于从万维网(WWW:World Wide Web )服务器传输超文本到本 ...

  6. Hibernate中Criteria的完整用法2

    Criteria的完整用法 QBE (Query By Example) Criteria cri = session.createCriteria(Student.class); cri.add(E ...

  7. SpringBoot进阶教程(六十一)intellij idea project下建多个module搭建架构(下)

    在上一篇文章<SpringBoot进阶教程(六十)intellij idea project下建多个module(上)>中,我们已经介绍了在intellij idea中创建project之 ...

  8. 通过 Channel 实现 Goroutine Pool

    最近用到了 Go 从 Excel 导数据到服务器内部 用的是 http 请求 但是发现一个问题 从文件读取之后 新开 Goroutine 会无限制新增 导致全部卡在初始化请求 于是乎就卡死了 问题模拟 ...

  9. iNeuOS 物联网云操作系统2.0发布,集成设备容器、视图建模、机器学习三大模块

    目       录 1.      概述... 2 2.      使命及目标... 3 3.      系统框架... 4 4.      设备容器(iNeuKernel)... 4 5.      ...

  10. 牛客 136J-洋灰三角 +高中数学博大精深

    参考学习:http://www.cnblogs.com/l609929321/p/9500814.html 牛客 136J-洋灰三角 题意: 在一个1 * n的棋盘中,第一格放1,之后的每一个放前一个 ...