2017-11-05 3 views
0

私のMacで、installed Bazel via brewを持っているのですが、Linuxのコンテナで動作するライブラリをビルドするためにlinuxクロスコンパイラをインストールするにはどうしたらいいですか?bazel用のlinuxクロスコンパイラをbrew経由でインストールするにはどうすればよいですか?

背景:

は私がローカルに私のMac上でbazel/rules_dockerテストの障害を診断しようとしているが、私はきれいに入隊が失敗した(https://github.com/bazelbuild/rules_docker/issues/217)ことがわかります。私の勘では、私は明示的にLinuxのcrosstoolといくつかのコンポーネントを構築する必要があるということですが、bazelは

Valid toolchains are: [ 
    --cpu='darwin_x86_64' --compiler='compiler' --glibc='macosx', 
    --cpu='ios_x86_64' --compiler='compiler' --glibc='ios', 
    --cpu='watchos_i386' --compiler='compiler' --glibc='watchos', 
    --cpu='tvos_x86_64' --compiler='compiler' --glibc='tvos', 
    --cpu='ios_i386' --compiler='compiler' --glibc='ios', 
    --cpu='ios_armv7' --compiler='compiler' --glibc='ios', 
    --cpu='watchos_armv7k' --compiler='compiler' --glibc='watchos', 
    --cpu='tvos_arm64' --compiler='compiler' --glibc='tvos', 
    --cpu='ios_arm64' --compiler='compiler' --glibc='ios', 
    --cpu='armeabi-v7a' --compiler='compiler' --glibc='armeabi-v7a', 
]. 

をインストールするためのいずれかの方法および/または参照他のツールチェーンがあると言いますか?

答えて

0

BazelはSkylarkリポジトリhereを使用してローカル設定を自動検出します。これは、ローカル環境を対象とするツールチェーンを検出する場合にのみ機能します。 Macからlinuxをターゲットにする必要がある場合は、カスタムツールチェーン(CROSSTOOLと関連するもの)を提供する必要があります。 1つのオプションは、Linuxマシンでbazelを実行し、生成されたtoolchainをoutput_baseから取得し、CROSSTOOLを含むフォルダをmacマシンにコピーし、--crosstool_topを使用して、自動生成されたCROSSTOOLの代わりにCROSSTOOLを使用することです。それは理にかなっていますか?

関連する問題