问题标签 [google-nativeclient]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
1429 浏览

javascript - 浏览器中的 Ruby

我正在寻找下一个问题的解决方案:现在我正在开发一个 Rails 应用程序。我希望有可能在浏览器中用 Ruby 编写代码,然后在我的 Rails 应用程序中执行该代码。

有现成的解决方案吗?

升级版:

  1. 代码高亮呢?
  2. 原生客户端呢?
0 投票
2 回答
171 浏览

gdb - 是否可以软件破坏 GDB 中的 Native Client 应用程序并继续执行?

有没有人有使用 这里描述的 Windows Native Client 调试器调试 Native Client 应用程序的经验?

我正在尝试在应用程序代码中触发软件断点或异常,这将在触发它的源行停止附加和运行的 GDB 并能够继续执行。

我可以通过创建非法地址异常来做到这一点,例如:

它确实会在使用定义的地方进入调试器:

但是我似乎无法使用跳转命令继续执行以跳过断行(使用下一个源代码行或汇编地址)。在继续之前,我是否需要确认或清除分段错误?

有谁知道是否可以使用非法地址异常继续执行?或者是否可以使用其他方法,例如引发软件异常 (EXC_SOFTWARE)?任何帮助或建议将不胜感激。

(顺便说一句,这是我第一篇关于堆栈溢出的帖子,所以如果我在这篇帖子中没有遵守任何礼仪,我深表歉意。)

非常感谢,

安迪

0 投票
2 回答
1006 浏览

javascript - Native Client 模块可以渲染由 C++ 代码生成的 HTML 吗?

我有一些处理输入文件并输出 HTML 和/或 SVG 的数据分析代码。它是 C++ 和 CPU 密集型的。

我想创建一个浏览器插件,这样我的代码就可以在不离开浏览器的情况下使用。Google 的 Native Client 框架和 Pepper API 听起来很有趣,但可能限制性太强了。从 Native Client 模块是否可以通过 Pepper 执行以下操作?

  1. 访问用户文件系统上的本地文件。我知道 NaCl 沙箱通常会阻止这种情况,但肯定有办法将用户选择的文件从 Javascript 层传递到 NaCL 中?

  2. 将 HTML 或 SVG 输出回浏览器。C++ 有什么方法可以修改包含文档的 DOM?

0 投票
1 回答
1353 浏览

ide - 我应该为 Google 的 Native Client 使用哪个 IDE?

我打算试用 Google 的 NaCL。我应该使用哪个 IDE 进行开发?如果能够从 IDE 编译项目并在 Chrome 中运行它,那就太好了。一些基本的调试也会非常有用。

0 投票
1 回答
602 浏览

javascript - Chrome Native Client,使用 onKeyDown 事件时出错

我正在尝试运行一个非常基本的 Chrome Native Client 应用程序。我想做的是响应击键,例如每当用户按下一个键时显示“你按下了 X”。我一整天都在做,但是每次我按下一个键,我都会得到“ Uncaught TypeError: Object # has no method 'postMessage' ”。

错误都在Javascript中;Native Client C++ 模块工作正常。

文档头部的 Javascript:

在页面中:

我已经尝试了大约 15 种不同的方法:使用 addEventListener 将其添加到 body 标签中,使用 onKeyDown 将其直接添加到 body 标签中……没有任何效果。

我有 C/C++ 和 PHP 的经验,但我的 Javascript 真的很弱。我想我一定遗漏了一些基本而明显的东西。

0 投票
1 回答
213 浏览

assembly - 如何解释 ncval 的输出?

我正在尝试将一些软件移植到本机客户端。出于速度原因,它在代码中的多个位置使用了一些内联汇编。(其中大多数都是非常简单的单行代码,它们非常简单,应该被认为是安全的。)

我得到了要编译和链接的项目,但目前它未能通过 Chrome 的代码分析。Ncval 输出以下内容:

但我真的不知道这个输出是什么意思。我可以看到它至少发现了一条非法指令。我做了一个client_x86_32.nexe的objdump,我试图根据ncval的输出找出非法指令的地址是什么,但我做不到,因为我不知道如何计算它ncval 输出。

欢迎任何帮助。

(与此同时,我将开始从代码中删除 asm 块,并希望我能找到有问题的块,以便我可以更正它以确保安全。)

0 投票
2 回答
1232 浏览

google-chrome-extension - NaCl 应该在未打包的扩展中默认启用,但我不能从一个

“NaCl 目前仅默认打开 Chrome Webstore 中的应用程序/扩展程序,或用于开发目的的解压扩展程序。” - 互联网

然而,我似乎无法从未打包的扩展中使用 NaCl。(我没有尝试过网上应用店。)

我有一个非常简单的测试扩展,它的 background.js 中有以下内容:

当在 chrome://flags 中启用 NaCl 时,此扩展报告 true,但在 chrome://flags(这是默认设置)中禁用 NaCl 时,它报告 false。

我希望它报告真实。

我错过了什么?

更新:

似乎发明我自己的检测代码毕竟不是一个好主意。如果我创建并安装了一个指向 url X 的解压 chrome webapp,那么 NaCl 将在该页面上运行,但此检测代码仍会报告错误,而在 chrome 中启用 NaCl 的普通网页上,同样的代码会报告 true: //标志。

但是,如果在指向 url X 的 iFrame 中创建一个使用 NaCl 的扩展程序(不是 chrome webapp),那么 NaCl 将无法在其中工作。

但是,如果我创建一个指向 url X 的 webapp 和一个在 iFrame 中使用 url X 的扩展,那么如果同时安装,两者都可以工作。

Update2: 如果我真的在扩展中包含了 nmf 和 nexe,那么它就可以工作。

更新 3: nexe 不需要包含在扩展中。

0 投票
3 回答
1541 浏览

google-nativeclient - 示例在 Google NaCl rev 18 中不起作用

我正在尝试使用最新的 Google NaCl SDK。按照https://developers.google.com/native-client/pepper18/devguide/tutorial上的说明进行操作

我从他们的网站下载了 naclsdk 工具,运行更新,得到了一个 pepper_18 文件夹。

我将 NACL_SDK_ROOT 设置为 pepper_18 文件夹,进入“示例”并运行 make。一切似乎都编译得很好。

我启动了 Chrome,查看了 about: flags 和 about: plugins,并验证了 NaCl 已启用。我安装了 SDK 示例应用程序(来自:https ://developers.google.com/native-client/pepper18/sdk/examples ),效果很好。

然后我尝试运行本地构建和托管的示例,转到http://localhost :5301。HTML 加载正常,但 NaCl 内容不加载。在 hello world 示例中,它永远显示“状态:正在加载...”。

我仔细检查了 HTTP 服务器日志,没有看到任何错误。还有其他地方我应该寻找记录的错误吗?

0 投票
2 回答
1265 浏览

c++ - 从无到有构建 Native Client 应用程序

从头开始构建 Native Client 应用程序需要什么?我查看了文档,并摆弄了几个应用程序,但是,我现在开始制作自己的应用程序,我没有看到任何与创建本机客户端应用程序的基础相关的内容。

0 投票
2 回答
2414 浏览

google-chrome - Google Chrome Native Client 与插件或扩展的比较

我是 Native Client 的新手;也是插件/扩展的新手。让我印象深刻的是插件/扩展在某些方面比 NaCl“更好”:

  1. 可以在任何地方/任何方式编译插件/扩展以生成普通的旧 DLL 或 .so;NaCl 需要仅由 NaCl 工具链生成的二进制文件。

  2. 插件/扩展可以跨浏览器移植(例如,它应该在 FIrefox 等以及 Chrome 中运行)。这是因为插件/扩展遵循 Netscape 3 中引入的事实上的标准。

如果这一切都是真的,那么 NaCl 相对于插件/扩展的优势是什么?