RHEL6システムで最新バージョンのAndroid SDKを実行しようとしています。 GLIBC 2.14が必要であるというエラーが発生します。そのため、/opt/glibc-2.14にGLIBC 2.14をインストールしました。
設定が完了しましたLD_LIBRARY_PATH=/opt/glibc-2.14/lib
。 GLIBC 2.14がインストールされていないというメッセージが表示されず、Android SDKツールを実行できるようになりました。しかし、Android APKをビルドするためにGradleビルドを実行しようとすると、動作は停止します。
LD_LIBRARY_PATH
Gradleジョブの実行を削除して失敗した場合は、GLIBC 2.14がインストールされていないことを示します。 GLIBC 2.14に設定したjava --version
場合LD_LIBRARY_PATH
など、コマンドを実行しても同じ解決されない問題があります。
この問題を解決する方法はありますか?
答え1
Jenkinsビルドパイプラインを介してGradleを使用しても同じ問題が発生しました。
/opt/glibc-2.14でglibc 2.14を手動でコンパイルしました。 LD_LIBRARY_PATHを設定すると、Android SDKは正常に機能しますが、Gradleビルド呼び出しが「futex」エラーメッセージ(straceに表示される)で失敗します。
stacktrace オプションで gradle を実行しても出力はありません。
Gradleを実行する唯一の方法は、redsleeve.orgに次のRPMをインストールすることです。
wget http://ftp.redsleeve.org/pub/steam/glibc-2.15-60.el6.x86_64.rpm
wget http://ftp.redsleeve.org/pub/steam/glibc-common-2.15-60.el6.x86_64.rpm
wget http://ftp.redsleeve.org/pub/steam/glibc-devel-2.15-60.el6.x86_64.rpm
wget http://ftp.redsleeve.org/pub/steam/glibc-headers-2.15-60.el6.x86_64.rpm
rpm -Uvh glibc-2.15-60.el6.x86_64.rpm glibc-common-2.15-60.el6.x86_64.rpm glibc-devel-2.15-60.el6.x86_64.rpm glibc-headers-2.15-60.el6.x86_64.rpm
更新されたglibc-packagesをインストールした後、CentOS 6.9(x64)システムでGradleビルドが正しく実行されます。
これはテスト環境には役立ちますが、システムアップデートの場合、アップデートプロセス全体が中断される可能性があります。手動でコンパイルされたバージョンを使用してより良い方法を見つけようとしています。
〜乾杯