ARMプラットフォームのクロムをビルドする際に問題があります。ARM gnビルドの問題のクロムバージョン53
のLinuxバージョン4.2.0-42-ジェネリック(builddの@ lgw01-55)(gccのバージョン4.8.4(Ubuntuの〜14.04.3 4.8.4-2ubuntu1))
:ここに私のホストサーバーに関するいくつかの詳細がありますまた、Chromiumバージョン53.0.2785.143を使用しています。私はクロムを構築するためにGNを使用しようとしました、そしてここargs.gnファイルの私の引数は次のとおりです。
target_cpu = "arm"
arm_tune = "generic-armv7-a"
arm_float_abi = "softfp"
基本的に、私は私のために、ARMプラットフォームの上で、これらの特定の引数を使用していました。そして、gnコマンドはエラーなしで実行されました。忍者でプロジェクトをビルドするときただし、以下のエラーが飛び出し:
ninja: Entering directory `out/Default_arm64' [1/1] Regenerating ninja files [296/46119] LINK ./minidump-2-core FAILED: minidump-2-core ../../third_party/llvm-build/Release+Asserts/bin/clang++ -Wl,--fatal-warnings -fPIC -Wl,-z,noexecstack -Wl,-z,now -Wl,-z,relro -Wl,-z,defs -fuse-ld=gold -B../../third_party/binutils/Linux_x64/Release/bin -Wl,--icf=all -pthread --target=arm-linux-gnueabihf --sysroot=../../build/linux/debian_wheezy_arm-sysroot -L/home/miaozixiong/workspace/chromium/src/build/linux/debian_wheezy_arm-sysroot/lib/arm-linux-gnueabihf -Wl,-rpath-link=/home/miaozixiong/workspace/chromium/src/build/linux/debian_wheezy_arm-sysroot/lib/arm-linux-gnueabihf -L/home/miaozixiong/workspace/chromium/src/build/linux/debian_wheezy_arm-sysroot/usr/lib/arm-linux-gnueabihf -Wl,-rpath-link=/home/miaozixiong/workspace/chromium/src/build/linux/debian_wheezy_arm-sysroot/usr/lib/arm-linux-gnueabihf -Wl,-rpath-link=../Default_arm64 -Wl,--disable-new-dtags -o "./minidump-2-core" -Wl,--start-group @"./minidump-2-core.rsp" -Wl,--end-group -ldl -lrt ld.gold: error: obj/breakpad/minidump-2-core/minidump-2-core.o uses VFP register arguments, output does not
...
私はクロムに新しいですし、これらのエラーはどういうについて見当もつかない。だから誰も回避する方法を知っていますか?あなたは高く評価されています。
注:ARMプラットフォームに応じて、「softfp」にするにはarm_float_abi属性が必要です。だから、私はそれを "ハード"に変更することはできませんのでご注意ください。また、float abi = "hard"と設定すると、ビルドエラーは発生しません。
こんにちは@valiano。ご返信ありがとうございます。私はarm_float_abi = "ソフト"オプションを試してみて、同じエラーが発生しました。また、私が以前触れたチュートリアルも読んでいます。残念ながら、私はこのチュートリアルが主に "ハード"フロート方法に焦点を当てていると思います。私はLinuxのアームクロスツールチェーンにはかなり新しいです。もし私が間違っていたら、私を修正してください。 – tonymiao
@tonymiao私は見ています...ツールチェインに関しては、 'sudo apt-get install gcc-arm-linux-gnueabi g ++ - 4.7-multilib-arm-linux-gnueabi'をインストールし、 HF対応の 'gcc-arm-linux-gnueabihf'と' g ++ - 4.8-multilib-arm-linux-gnueabihf'を参照してください。 – valiano
おじいさん、@valianoありがとう。私はあなたがコメントで言及した方法を試みた。まだそれを作ることはできません。私は2015年にGoogleが腕のコンパイラを変更したと思う。私はgnueabiをgnueabihfに変更していたhttps://bugs.chromium.org/p/chromium/issues/listのパッチを追跡した。関連する変更が多すぎるため、すべて見つけられませんでした。 – tonymiao