【问题标题】:Build output of SpiderMonkey under WindowsWindows下SpiderMonkey的构建输出
【发布时间】:2020-03-10 03:13:21
【问题描述】:

我根据documentation在Windows(VS2017)下构建了SpiderMonkey 60,使用 ../configure --enable-nspr-build 后跟 mozmake。 在输出文件夹 (dist\bin) 中,我可以看到创建了 5 个 DLL:

mozglue.dll, mozjs-60.dll, nspr4.dll, plc4.dll, plds4.dll

为了运行 SpiderMonkey Hello World sample,我将我的 C++ 程序与 mozjs-60.lib 链接起来,并且必须将以下 DLL 复制到我的程序位置:mozglue.dll, mozjs-60.dll, nspr4.dll

程序运行和执行脚本似乎不需要plc4.dll, plds4.dll。 我找不到任何关于每个 DLL 的用途的文档。我需要所有 5 个 DLL 吗?每个人的目的是什么?

【问题讨论】:

    标签: firefox spidermonkey


    【解决方案1】:

    引用NSPR archived release notes for an old version 我发现了这个:

    plc(便携式库 C)库是独立于 核心 nspr。如果您只想使用核心,则不需要使用 plc nspr 函数。 plc 库当前包含线程安全字符串 处理命令行选项的函数和函数。

    plds(可移植库数据结构)库支持数据 诸如竞技场和哈希表之类的结构。重要的是要注意 plds 的服务不是线程安全的。使用这些服务 多线程环境,客户端必须自己实现 线程安全访问,例如通过获取锁/监视器。

    除非您的应用程序专门加载,否则它们听起来像是未使用的。

    如果您不需要它们,似乎不分发它们是安全的。

    【讨论】:

    • ps 我在 spidermonkey 源代码中找不到与 plc4 的任何特定链接(v74 中 plc4 的 grep 仅在 nspr 树中命中)
    猜你喜欢
    • 2019-09-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-25
    • 1970-01-01
    • 1970-01-01
    • 2010-11-13
    相关资源
    最近更新 更多