听过Mozilla(火狐浏览器的娘家)的javascript引擎吗?感兴趣吗?想在windows平台的应用开发中使用这个引擎吗?

肯定?

好,往下看!

本文给出Windows平台SpiderMonkey的32位和64位静态库编译方法

WINDOWS-SpiderMonkey 32 位Release 静态库,开心吧?
网上2017 年以前的例子,你不一定能编译的过!哈哈
本文是2017 年8 月底,最新力作!哈哈哈哈哈哈哈:)
一. 下载MozillaBuild,关于作用请网上查询
地址:
https://ftp.mozilla.org/pub/mozilla.org/mozilla/libraries/win32/MozillaBuildSetup-L
atest.exe
什么!你敢下这个,作死!哈哈。
我下了,里边没有start-shell-msvcxxxx.bat!郁闷:(,但这玩
意估计你自己是搞不定的!哈哈
所以,听过的下这个吧:
https://ftp.mozilla.org/pub/mozilla/libraries/win32/MozillaBuildSetup-2.2.0.exe
没错,别犹豫,听我了,你又活过来了,不然后边有你苦
头吃呢!
二. 下载SpiderMonkey,这就是我们的主角了
https://people.mozilla.org/~sstangl/mozjs-31.2.0.rc0.tar.bz2
哈哈,废话不多说,你还是听我的,下这个吧
https://archive.mozilla.org/pub/js/mozjs-24.2.0.tar.bz2
我找的的是最大,最新的,你值得拥有
三. 安装环境
1. 双击MozillaBuildSetup-2.2.0.exe,安装去吧….
2. 进入mozilla-build 目录,双击start-shell-msvc2013.bat
3. 输入hg clone https://hg.mozilla.org/projects/nspr /c/nspr/mozilla/nsprpub
安装NSPR,这个是个好东西,哈哈,干嘛用,自己百度
吧,这这里没有的话,就别想编译Mozilla JS 引擎了
等待一会儿,
就下载完毕,内容在C:\nspr\mozilla\nsprpub
4. 编译NSPR
1. 进入c:\nspr
2. 新建目录target
3. 进入target 目录,输入命令后,回车
../mozilla/nsprpub/configure --enable-win32-target=WIN95 \
--disable-debug --enable-optimize
4. make 编译,
C:\nspr\target\dist\include
C:\nspr\target\dist\lib
C:\nspr\target\dist\bin
分别存放生成的NSPR 的头文件,lib 库,dll 库
四. 编译SpiderMonkey
1. RAR 解开mozjs-24.2.0.tar.bz2,然后把结果拷贝至C 盘,即
有了C:\mozjs-24.2.0 目录
2. 进入其上的子目录\js\src,创建目录build_OPT.OBJ
3. 输入命令,autoconf-2.13
4. 进入build_OPT.OBJ 目录,输入
../configure --enable-static --disable-shared-js
--enable-optimize \
--enable-win32-target=WIN95 \
--with-nspr-cflags="-IC:/nspr/build_OPT.OBJ/dist/include/n
spr" \
--with-nspr-libs="C:/nspr/build_OPT.OBJ/dist/lib/nspr4.lib \
C:/nspr/build_OPT.OBJ/dist/lib/plds4.lib \
C:/nspr/build_OPT.OBJ/dist/lib/plc4.lib"
5. 能到这里,你有福气,哈哈哈哈
输入,mozmake 命令吧
6. 结果
Js\src\build_OPT.OBJ 下边,js-static.lib 就是你要的静态库
Js\src\build_OPT.OBJ\dist\include 下边,都是你需要的库的头文件
五. Finally
相逢不易,又到了离别时分!哈哈哈哈
祝大伙儿使用SpiderMonkey 库开开心心:)

附件,关于64位编译

只有两点需要注意
一. 编译64 位NSPR 的配置
../mozilla/nsprpub/configure \
--enable-win32-target=WIN95 \
--disable-debug --enable-optimize \
--enable-64bit \
--target=x86_64-pc-mingw32
二. 编译64 位的SpiderMonkey 的配置
../configure \
--enable-static \
--disable-shared-js --enable-optimize \
--enable-win32-target=WIN95 \
--enable-64bit \
--with-nspr-cflags= \
"-IC:/nspr/build_OPT.OBJ/dist/include/nspr" \
--with-nspr-libs="C:/nspr/build_OPT.OBJ/dist/lib/nspr4.lib \
C:/nspr/build_OPT.OBJ/dist/lib/plds4.lib \
C:/nspr/build_OPT.OBJ/dist/lib/plc4.lib"
三. Finally
解释下:
1. 本人下载的源码,不支持在vs2015||vs2017 上编译,
这是在配置|编译错误信息里明确指出来了。
我也没有安装vs2013,但我机器上有vs2010。
所以,我是用vs2012 编译这一切的,但是你下载那个
MozillaBuild-24..2.0 安装后可是没有提供vs2010 配置项
的噢,这个是我自定义来的,你也可以从更早的版本里
或得。
2. 关于这个--target=x86_64-pc-mingw32 配置项目,在官
网上64 位编译必须加上。在我这里如果不加入此项
目做编译,那么生成32 位和64 位静态库js_static.lib
的过程没有问题。只是最后的库大小完全一样,我深
表怀疑是否真的生成了64 位版本。但如果你加上此
配置项,NSPR 库可以顺利编译,但是SpiderMonkey
库就会在编译时报错误:
C:\Program Files (x86)\Microsoft
SDKs\Windows\v7.0A\include\winnt.h(14982) : error
C3861: '__readfsdword': identifier not found
也就是SDK 里有函数没有定义,估计是我的VC 版本
低所致的低版本依赖SDK 库实现不完全所致。
如果你有vs2012 或者vs013 请自己去编译验证,估
计你是幸运儿!哈哈哈
好了, 相逢不易, 送别很难,最后, 祝大家在
SpiderMonkey 的开发道路上顺利。

再会OK。

另外,在CSDN上还有本人写的另外一篇文章,介绍windows平台上编译与使用lua(语言)开源项目的文章,感兴趣的话可以去看看

windows编译-spidermonkey相关推荐

  1. OGRE 2.1 Windows 编译

    版权所有,转载请注明链接 OGRE 2.1 Windows 编译 环境: Windows 7 64Bit Visual Studio 2012 OGRE 2.1 CMake 2.8.12.1 OGRE ...

  2. DCNv2 windows编译2021

    2019年曾经写过一篇DCNv2 windows编译的博客 https://blog.csdn.net/jacke121/article/details/91355170 当时vs2015是编译成功的 ...

  3. Cef mysql.exe_CEF3.2623使用记录:windows编译

    CEF3.2623使用记录:windows编译 1:cef3.2623下载地址 2623是cef3最后一个支持xp系统的版本,且可以支持html的audio标签,可以用作对html音频的处理下载地址为 ...

  4. LibreCAD for windows 编译

    LibreCAD for windows 编译 项目中要用到平面CAD功能,找到libreCAD,发现不很适合需求,需要重新改造一下:)要改造就要编译: 1.下载源码解压到H盘 2.用notepad+ ...

  5. FreeRDP 2.0 for Windows 编译

    简介 Freerdp 一个开源的RDP跨平台客户端: https://github.com/FreeRDP/FreeRDP 版本 2020-04-09 Github上其发布了2.0版本: 只下载其re ...

  6. Windows编译FreeRDP

    Windows编译FreeRDP 需要准备的工具 1.安装CMake (cmake-gui) 2.安装`Visual Studio Community 2017` 3.下载`FreeRDP`源码 4. ...

  7. windows编译g20问题解决记录

    windows编译g20问题解决记录 error C3861: 'vasprintf': identifier not found 参考链接 here

  8. Windows编译安装AzerothCore魔兽世界开源服务端Lua脚本引擎Eluna和防作弊anticheat模块教程

    Windows编译安装AzerothCore魔兽世界开源服务端Lua脚本引擎Eluna和防作弊anticheat模块教程 大家好,我是艾西今天和大家聊聊魔兽世界游戏内的脚步以及防作弊模块 Eluna是 ...

  9. windows编译libzip vs2017

    windows编译libzip vs2017 1 下载 2 打开工具 3 编译zlib 4 编译libzip 链接 参考: 原创文章禁止转载 同步发布http://www.alom.com.cn/ 1 ...

最新文章

  1. 【redis】2.redis可视化工具安装使用
  2. 云上快速搭建Serverless AI实验室
  3. 记录spring、springboot集成apollo配置中心
  4. 快速排序 - python版超详细讲解
  5. Android ListView 实现下拉刷新上拉加载
  6. bp神经网络模型的优缺点,bp神经网络缺点及克服
  7. 《普通心理学》读书笔记
  8. PS改变证件照的背景颜色
  9. facebook登陆,如何邀请玩家成为测试人员
  10. python跳转下一页_我怎么能跳转到下一页呢
  11. [iOS]获取App Store上的软件的ipa文件
  12. 计算机以及dos窗口常用快捷键
  13. 俄罗斯方块游戏shell编程代码
  14. ToC战场进入尾声,ToB市场战争厮杀即将升级?
  15. C语言之strrchr函数
  16. 招商银行信用卡中心18秋招题解
  17. Linux 入门第一节
  18. 元学习—模型不可知元学习(MAML)
  19. 支付宝刷脸——我们进入了一个怎样的刷脸时代
  20. driver,bus,device

热门文章

  1. 声纹识别技术助力远程身份认证
  2. A8Jr的XP版驱动程序
  3. es修改排序_ElasticSearch 评分排序
  4. 禁用计算机usb设备,电脑USB接口被禁用了,教您怎么开启
  5. 微信小程序指定盒子上滑置顶(记录)
  6. 学习笔记(1):EXCEL VBA编程进阶-2.6 工作表与工作簿结合应用(拆分工作表到工作簿)...
  7. Stata:安装ivreghdfe包
  8. DSP28377S_程序从FLASH部分复制到RAM中运行详解
  9. 驱动程序正常但是网络连接里面wlan右键状态里面打开是空的啥都没有,通过修复提示wlan适配器的驱动程序可能出现问题,下面给大家说一下修复方法。(问题描述:wifi检测不到,驱动正常)
  10. 神经网络与深度学习笔记汇总一