zoukankan      html  css  js  c++  java
  • windows-spidermonkey

    听过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: sprmozilla sprpub
    4. 编译NSPR
    1. 进入c: spr
    2. 新建目录target
    3. 进入target 目录,输入命令后,回车
    ../mozilla/nsprpub/configure --enable-win32-target=WIN95
    --disable-debug --enable-optimize
    4. make 编译,
    C: spr argetdistinclude
    C: spr argetdistlib
    C: spr argetdistin
    分别存放生成的NSPR 的头文件,lib 库,dll 库
    四. 编译SpiderMonkey
    1. RAR 解开mozjs-24.2.0.tar.bz2,然后把结果拷贝至C 盘,即
    有了C:mozjs-24.2.0 目录
    2. 进入其上的子目录jssrc,创建目录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. 结果
    Jssrcuild_OPT.OBJ 下边,js-static.lib 就是你要的静态库
    Jssrcuild_OPT.OBJdistinclude 下边,都是你需要的库的头文件
    五. 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
    SDKsWindowsv7.0Aincludewinnt.h(14982) : error
    C3861: '__readfsdword': identifier not found
    也就是SDK 里有函数没有定义,估计是我的VC 版本
    低所致的低版本依赖SDK 库实现不完全所致。
    如果你有vs2012 或者vs013 请自己去编译验证,估
    计你是幸运儿!哈哈哈
    好了, 相逢不易, 送别很难,最后, 祝大家在
    SpiderMonkey 的开发道路上顺利。

    再会OK。

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

    http://bbs.csdn.net/topics/392233711

  • 相关阅读:
    English Learning 2020
    TURKEY Example–KMAT stock order ZTIR/ KMAT dealer 3rd party order ZTR
    TURKEY Example–KMAT stock order ZOR
    ANZ Project
    Outlook Integration with Salesforce – A Step by Step Guide
    3rd party order swap and sales from stock
    Ford’s New 8-Speed Transmission Is GM’s 9-Speed, Minus A Gear
    The New Ford 8F35 8-speed Transmission
    Smartforms 打印文字压线问题
    abap table control里面各种属性和事件的写法
  • 原文地址:https://www.cnblogs.com/woodzcl/p/7427503.html
Copyright © 2011-2022 走看看