問題タブ [bazel]
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.
tensorflow - syntaxnet bazel テストに失敗しました
実行bazel test syntaxnet/... util/utf8/...
したところ、次の出力が得られました。
の出力が必要な場合はお--test_verbose_timeout_warnings
問い合わせください。
Test.log の出力は以下のとおりです。これは、Stackoverflow が投稿のコードが多すぎることを示しているためです:/
ありがとう!
test.log 出力:
bazel - ワークスペースの定義の内外で機能するバゼル選択マクロを作成するには?
ワークスペース@base
で、main/macros.bzl に次のような「マクロ」があるとします。
そして、main/BUILD では:
ここで、このマクロを別のワークスペースからロードできるようにしたいと考えています@child
。たとえば、次のようになります。
//main:development
その後、ワークスペースに対して解決されず、@base
ワークスペースに対して解決されるため、失敗し@child
ます。
ただし、次のように完全に修飾すると、次のようになります。
その後、 で動作し@child
ますが、定義しているワークスペース内で使用すると失敗し@base
ます@main
。
@base//main:development
定義するワークスペースの内外で機能する方法で、マクロ内でを参照するにはどうすればよいですか?
android - Tensorflow Android の例がビルドされない
tensorflow から Android の例をビルドしようとしていますが、迷惑なビルド エラーが発生し続けます。これまでの私の手順:
- SDK 用の Android Studio をインストールしました。(v24)
- ダウンロードした android NDK 10e (他のバージョンは動作しないようです)
- 追加でインストールされた SDK ビルド ツール 23.0.1 (v24 は動作しないようです)
- 開始モデルを使用して、アセット フォルダーを Android の例に追加しました
- NDK/SDK の場所を指すように WORKSPACE ファイルを編集しました。
TF のいくつかのバージョンを試しましたが、エラーが発生し続けます。何か案は?
エラー:
c++ - Bazel には、ファイルのグロビングに関して CMake と同じ問題がありますか?
新しいプロジェクトを開始していて、ビルド システムを選択する必要があります。すべての C++ ソース ファイルを自分のビルド ルールに手動で追加する必要はありません。これは 2016 年までに自動化する必要があり、リファクタリング (ヘッダー内のクラスの名前変更、ソース ファイル、およびビルド システム ファイル...)。
この投稿に出くわしたとき、再帰的なファイル グロビングで CMake を使い始めていました: GLOB でソース ファイルをグローバルに指定しますか?
これは、CMake がビルドに 2 つのフェーズ (cmake と make) を使用し、通常の使用ではユーザーが 2 番目のフェーズ (make) のみを再実行するため、グロビングが悪であることを示唆しています。
一見すると、Bazel はファイルのグロビングも可能にします。Bazelと一緒に使うのは悪いことですか?コード ベース上で実行find
することは、ビルド システムが実際に回避する必要があるようなスケーリングの問題ですか?
java - ローカルでスローされない ClassNotFoundException が原因で Java が NoClassDefFoundError をスローする AWS Lambda
最近、AWS Lambda with Java をいじり始めました。
ダガー2を注射に使い始めるまでは順調でした。
現在、Lambda は次のエラーをスローします。
java -jar myjar.jar
ただし、これはローカルで実行している場合には発生しません。を使用して、クラスがそこにあることも確認しましたjar tvf myjar.jar
。
Bazel を使用してビルドします。
私がチェックした他の質問は、依存関係が利用できないことが原因である可能性があることを示唆していますが、クラスの内容には依存関係がありません。
Dagger リポジトリから取得:
自己完結型の jar を実行しているときにローカル環境では発生しない AWS の問題の原因は何ですか?
前もって感謝します
編集 1: 最小限の BUILD ファイルは次のとおりです。
ワークスペースファイルは次のとおりです。
ここに Action.java があります (注: Preconditions を直接使用して最小限の実装にしています。実際のコードでは、コンポーネントをビルドしようとすると失敗します)。
これを実行bazel build //src/main/com/company:bin_deploy.jar
して AWS Lambda 関数にアップロードすると、失敗するはずです。ローカルで実行するbazel run //src/main/com/company:bin
か、正常に動作する場合java -jar bazel-bin/src/main/com/company/bin_deploy.jar
。
android - TensorFlow Android デモ: Bazel でビルドできず、RELEASE.TXT を読み取れませんでした
最近、TensorFlow の使い方を学んでいて、自分のコンピューターに Android デモをセットアップして、それらがどのように機能するかを確認したいと考えていました。ここに記載されている手順に従いましたが、唯一の違いは、Android Studio を使用して Android SDK をインストールし、SDK Manager を使用して Android NDK をインストールしたことです。まで$ bazel build //tensorflow/examples/android:tensorflow_demo
はすべて正常に機能していましたが、その後、端末から次のエラーが表示されました。
同様の問題を調べてみると、このエラーは RELEASE.TXT ファイルが Android NDK の最新バージョンに含まれていないことが原因であると理解しています。この号では、RELEASE.TXT ファイルを含む以前のバージョンの NDK にダウングレードすることを提案し、そのようなバージョンをダウンロードするためのリンクを提供しました。ただし、私がたどったリンク ( https://dl.google.com/android/ndk/android-ndk-r10e-linux-x86_64.bin ) は、私には使用できない .bin ファイルをダウンロードしました。その投稿では、WORKSPACE ファイルの NDK エントリをコメントアウトすることも提案されていましたが、今後さらに複雑になるかどうかわからないため、まだ試していません。
私が試したもう 1 つの方法は、エラー ログ ( /home/me/.cache/bazel/_bazel_me/f3471be34d1e62bf21975aa777cedaa3/external/androidndk/ndk
) で示されたパスに移動し、空の RELEASE.TXT ファイルを作成することでしたが、違いはありませんでした。(私がインストールした NDK では作成できませんでした。これは、 path/home/me/android-studio/android-studio/plugins/android-ndk/lib
に .jar ファイルの形式があったためです。したがって、表示できる唯一の方法はこのパスでした。)
このままでは、行き止まりです。NDK エントリをダウングレードまたはコメントアウトせずに、この問題を解決する別の方法はありますか? そうでない場合、以前のバージョンの Android NDK をインストールするにはどうすればよいですか?
ruby - OSX El Capitan で共有 Tensorflow ライブラリをビルドしてリンクし、Ruby から Swig 経由で呼び出す
Swigを使用して、 Tensorflowの周りに Ruby ラッパーを構築する手助けをしようとしています。現在、私は共有ビルドを作成し、その C/C++ ヘッダーを Ruby に公開することに行き詰まっています。問題は、OSX El Capitan で共有ライブラリとして利用できるように、完全な Tensorflow ライブラリを含む共有ビルドをビルドするにはどうすればよいですか(注: El Capitan では読み取り専用です)。.so
libtensorflow.so
/usr/lib/
バックグラウンド
このruby-tensorflowプロジェクトでは、 Tensorflow.bundle
ファイルをパッケージ化する必要がありますirb -Ilib -rtensorflow
が、スペックを実行しようとすると、基本的な数値型が定義されていないというエラーが表示されますが、ここでrspec
明確に定義されています。
.so
ファイルが正しく作成されていないか、何かが適切にリンクされていないために、これが発生すると推測しています。C++/Swig/Bazel は私の得意分野ではありません。Tensorflow の学習と Ruby での優れたラッパーの構築に集中したいと思っていますが、この時点でその楽しい部分に到達するのにかなり行き詰まっています。
私がやったこと:
git clone --recurse-submodules https://github.com/tensorflow/tensorflow
cd tensorflow
bazel build //tensorflow:libtensorflow.so
(私のマシンで10〜15分待ちます)- 生成され
libtensorflow.so
た (166.6 MB) を/ext
-folderにコピーしました - プロジェクトに記述されている
ruby extconf.rb
、make
、および を実行します。make install
- 走る
rspec
必死になって、ソースからの公式インストールsudo pip install /tmp/tensorflow_pkg/tensorflow-0.9.0-py2-none-any.whl
も何度か行いましたが、最後のステップで共有ビルドが作成されるのか、Python インターフェイスが公開されるだけなのかはわかりません。
元のリポジトリを作成し、私が従った指示を作成した Arafat という男は、彼の Linux マシンで 4.5 GBlibtensorflow.so
だと言っています。UPDATE1:彼は、彼の-build は302.2 MBで、4.5GB は tensorflow フォルダー全体のサイズであると言います。libtensorflow.so
任意のヘルプまたは代替アプローチは非常に高く評価されています!
c++ - bazel/googletest で環境変数を使用する方法
そこで、シミュレーションの単体テストを実行するために、bazel と googletest フレームワークを使用したいと考えています。このために、サンプル入力ファイルとサンプル出力ファイルが必要です。ソース ファイル、テスト ファイル、またはリポジトリ内の任意のファイルの絶対パスを取得したいので、そこから入力ファイルへの相対パスを作成できます。
例えば:
そのため、多くの検索を行った後、次のように bazel の BUILD ファイルから直接定数を定義できることがわかりました。
重要な行は、私が使用している copts にあります$(workspace)
。
私はここで、このようにcopts(または代わりに)を指定できることを読みましたdefines
が、これは機能します。最初のページがリンクしている
このページは、次のような環境変数を使用できることを教えてくれます: $(FOO)また、実行して利用可能なすべての環境変数を取得
できることも教えてくれます。bazel info --show_make_env
私がそれを実行すると、ワークスペースを含む環境変数の大きなリストが他の多くの隣に表示されます。
ここで問題が発生します。
しかし、$(workspace)
変数を使用すると、bazel は $(workspace) が定義されていないことを教えてくれます。
$PWD 変数を使用できれば私もうまくいきますが、これもうまくいきませんでした。
誰かが私を助けてくれることを願っています。
ごきげんよう、
ロミオ
編集:
bazel ビルド ファイルで 'data' オプションを使用するようになりました。これは主に機能します