問題タブ [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.
javascript - WebブラウザのRuby
次の問題の解決策を探しています。今、Railsアプリを開発しています。ブラウザでRubyでコーディングしてから、Railsアプリでそのコードを実行できるようにしたいと考えています。
すぐに使える解決策はありますか?
UPD:
- コードの強調表示はどうですか?
- ネイティブクライアントはどうですか?
gdb - GDB でネイティブ クライアント アプリケーションをソフトウェアで中断し、実行を継続することは可能ですか?
ここで説明されている Windows Native Client デバッガーを使用して Native Client アプリケーションをデバッグした経験のある人はい ますか?
アプリケーションコードでソフトウェアブレークポイントまたは例外を発生させようとしています。これにより、接続され実行されている GDB が起動元のソース行で停止し、実行を継続できるようになります。
これを行うには、不正なアドレス例外を作成します。たとえば、次のようになります。
これは、定義が使用されている場所でデバッガーに侵入します。
ただし、ジャンプコマンドを使用してブレーク行をスキップして実行を継続できないようです(次のソース行またはアセンブリ アドレスを使用)。続行する前に、セグメンテーション違反を確認またはクリアする必要がありますか?
不正なアドレス例外を使用して実行を継続できるかどうかは誰にもわかりませんか? または、ソフトウェア例外 (EXC_SOFTWARE) を発生させるなど、使用できる別の方法はありますか? ヘルプやアドバイスをいただければ幸いです。
(ちなみに、これはスタック オーバーフローに関する私の最初の投稿なので、この投稿でエチケットに従わなかった場合はお詫びします。)
どうもありがとう、
アンディ
javascript - ネイティブ クライアント モジュールは、C++ コードによって生成された HTML をレンダリングできますか?
入力ファイルを処理し、HTML や SVG を出力するデータ分析コードがあります。これは C++ であり、CPU を集中的に使用します。
ブラウザを離れることなくコードを使用できるように、ブラウザ プラグインを作成したいと考えています。Google の Native Client フレームワークと Pepper API は興味深いように思えますが、おそらく少し制限が強すぎるでしょう。Native Client モジュールから Pepper 経由で次のことを行うことは可能ですか?
ユーザーのファイルシステム上のローカル ファイルにアクセスします。NaClサンドボックスが一般的にこれを防ぐことは知っていますが、ユーザーが選択したファイルをJavascriptレイヤーからNaCLに渡す方法は確かにありますか?
HTML または SVG をブラウザに出力します。C++ が含まれているドキュメントの DOM を変更できる方法はありますか?
ide - GoogleのネイティブクライアントにはどのIDEを使用する必要がありますか?
GoogleのNaCLを試してみる予定です。開発にはどのIDEを使用すればよいですか?IDEからプロジェクトをコンパイルしてChromeで実行できると便利です。いくつかの基本的なデバッグも非常に役立ちます。
javascript - Chrome Native Client、onKeyDown イベントを使用したエラー
非常に基本的な Chrome Native Client アプリケーションを実行しようとしています。私がやりたいのは、たとえば、ユーザーがキーを押すたびに「X を押しました」と表示するなど、キーストロークに応答することです。私は一日中それに取り組んでいましたが、キーを押すたびに「Uncaught TypeError: Object # has no method 'postMessage'」が表示されます。
エラーはすべて Javascript にあります。Native Client C++ モジュールは正常に動作します。
ドキュメントの先頭にある Javascript:
ページ内:
addEventListener を使用して body タグに追加する方法、onKeyDown を使用して body タグに直接追加する方法など、約 15 の方法を試しましたが、何も機能しません。
私は C/C++ と PHP の経験がありますが、Javascript は本当に苦手です。基本的で明白な何かが欠けているに違いないと思います。
assembly - ncval の出力を解釈する方法は?
一部のソフトウェアをネイティブクライアントに移植しようとしています。速度上の理由から、コード内の複数の場所でいくつかのインライン asm を使用します。(それらのほとんどは本当に単純な 1 行のものであり、非常に単純であるため、安全であると見なす必要があります。)
プロジェクトをコンパイルしてリンクしましたが、現時点では Chrome のコード解析に失敗しています。Ncval は次のように出力します。
しかし、この出力が何を意味するのかはよくわかりません。少なくとも 1 つの不正な命令が見つかったことがわかります。client_x86_32.nexe の objdump を実行し、不正な命令のアドレスが ncval の出力に基づいていることを突き止めようとしましたが、計算方法がわからないため、できませんでした。 ncval 出力。
どんな助けでも大歓迎です。
(それまでの間、コードから asm ブロックの削除を開始し、問題のあるブロックを見つけて、安全に修正できるようにします。)
google-chrome-extension - NaCl は、解凍された拡張機能ではデフォルトで有効になっているはずですが、1 つの拡張機能からは使用できません。
「NaCl は現在、Chrome ウェブストアのアプリケーション/拡張機能、または開発目的で展開された拡張機能に対してのみ、デフォルトでオンになっています。」- インターネット
それでも、展開された拡張機能から NaCl を使用できないようです。(ウェブストアは試していません。)
background.js に次のような非常に単純なテスト拡張機能があります。
この拡張機能は、chrome://flags で NaCl が有効になっている場合は true を報告しますが、chrome://flags (デフォルト) で NaCl が無効になっている場合は false を報告します。
私はそれが真実を報告することを期待していました。
私は何が欠けていますか?
アップデート:
結局のところ、独自の検出コードを発明することはあまり良い考えではないようです。URL X を指すアンパックされた chrome webapp を作成してインストールすると、そのページで NaCl が機能しますが、この検出コードは false を報告しますが、chrome で NaCl が有効になっている通常の web ページでは、まったく同じコードが true を報告します。 //フラグ。
ただし、URL X を指す iFrame で NaCl を使用する拡張機能 (Chrome Web アプリケーションではない) を作成すると、NaCl は機能しません。
しかし、URL X を指す Web アプリケーションと、iFrame で URL X を使用する拡張機能を作成すると、同時にインストールすると両方が機能します。
Update2: 実際に拡張機能に nmf と nexe を含めると、機能します。
Update3: 拡張機能に nexe を含める必要はありません。
google-nativeclient - サンプルはGoogleNaClrev18では機能しません
最新のGoogleNaClSDKを使用しようとしています。https://developers.google.com/native-client/pepper18/devguide/tutorialの指示に従います
私は彼らのサイトからnaclsdkツールをダウンロードし、updateを実行して、pepper_18フォルダーを取得しました。
NACL_SDK_ROOTをpepper_18フォルダーに設定し、「examples」に移動してmakeを実行しました。すべてがうまくコンパイルされているように見えました。
Chromeを起動し、フラグとプラグインについて調べ、NaClが有効になっていることを確認しました。SDK Examplesアプリ(https://developers.google.com/native-client/pepper18/sdk/examplesから)をインストールしましたが、問題なく動作します。
次に、ローカルで構築およびホストされている例を実行して、http:// localhost:5301にアクセスしました。HTMLは正常に読み込まれますが、NaClコンテンツは読み込まれません。hello worldの例では、「Status:LOADING...」と永遠に表示されます。
HTTPサーバーのログを再確認しましたが、エラーはありません。ログに記録されたエラーを探す必要がある別の場所はありますか?
c++ - 何もないところからネイティブクライアントアプリを構築する
ネイティブクライアントアプリを最初から作成するには何が必要ですか?ドキュメントを調べて、いくつかのアプリをいじりましたが、現在は独自のアプリの作成に移行しており、ネイティブクライアントアプリの基盤の作成に関連するものは何もありません。
google-chrome - プラグインまたは拡張機能と比較した Google Chrome Native Client
Native Client は初めてです。プラグイン/拡張機能も初めてです。いくつかの点で、プラグイン/拡張機能は NaCl よりも「優れている」と思います。
プラグイン/拡張機能をどこでも/とにかくコンパイルして、プレーンな古い DLL または .so を生成できます。NaCL には、NaCl ツールチェーンによってのみ生成されたバイナリが必要です。
プラグイン/拡張機能は、ブラウザー間で移植可能です (たとえば、Chrome だけでなく、FIrefox などでも動作するはずです)。これは、プラグイン/拡張機能が Netscape 3 で導入された事実上の標準に準拠しているためです。
それがすべて本当なら、プラグイン/拡張機能に対する NaCl の利点は何ですか?