
インストールしようとしていますGoogle ティンクAWS EMR 5.28.0 ではあまりうまくいきませんでした。AWS EMR イメージの性質がかなり変わっているようです。何かアイデアはありますか?
sc.install_pypi_package("tink")
エラー: bazel 実行ファイルが見つかりませんでした。Tink Python パッケージをコンパイルするには、bazel をインストールしてください。
sudo yum install -y bazel3
必要条件: java-11-openjdk-devel
sudo yum install java-11-openjdk-devel
利用可能なパッケージ java-11-openjdk-devel がありません。
sudo yum install amazon-linux-extras
利用可能なパッケージ amazon-linux-extras がありません。
答え1
結局のところ、Linux AMI (AWS EMR 5.28.0 のベース) は扱いにくいです。利用可能なリポジトリには Java、Bezel、ましてや Tinker は用意されていません (Macos、Ubuntu、ECR Python イメージでは簡単に使用できますが)
Java 11jdk を入手するには、Oracle にアクセスして Linux x64 RPM パッケージを探す必要があります。残念ながら、そのサイトにサインインする必要があるため、wget/curl は利用できません。
インストールするには、次の手順を実行する必要があります。
sudo yum localinstall jdk-11.0.12_linux-x64_bin.rpm
Bazelの場合はGithubからパッケージを取得する必要がありますhttps://github.com/bazelbuild/最新のものを選んでインストールする
./bazel-4.1.0-installer-linux-x86_64.sh
その後、pipは正常に動作します
sc.install_pypi_package("tink")
出力:
Successfully built tink
Installing collected packages: protobuf, absl-py, tink
Successfully installed absl-py-0.13.0 protobuf-3.17.3 tink-1.6.1