2016-07-24 1 views
-3

ゴールドリンカーをチェックして、リンキングプロセスのスピードアップを確認しています。 /etc/alternative/ldldのソフトリンクを/usr/bin/gold.ldを指すように変更しました。ゴールドリンカーの問題

その結果、リンク時間が非常に遅くなり、最悪のことは私が理解できない理由からリンクが失敗するということです。

金リンカーに移行した経験がありますか? パラレルリンクを使用するにはどうすればよいですか? (私は1 ldプロセスを見たトップコマンドを使用して)。

おかげ

答えて

1

Does anyone have experience with transitioning to gold linker?

はい。

(私はこれはほとんど役に立たない答えであると認識していますが、役に立たない質問をしてきましたので、それはです。)

How do I use the parallel linking in it?

ゴールドリンカーはデフォルトではありませんこれは、--enable-threadsを設定する必要があります。

リンカがスレッドをサポートするように設定されている場合は、--thread--thread-count COUNTが検索対象フラグ(man page)です。

注しかし、私の経験ld.goldでそのスレッドを使用せずにld.bfdよりも4-6倍高速で、かつスレッドは確かにあなたのリンク障害を治すつもりはありません。

あなたの最善の策は、リンク障害を理解し、問題が何であれ修正することです。いったんこれを実行すると、ld.goldも高速になる可能性が高くなります。

+0

"/ usr/bin/ld:致命的なエラー:-rと動的オブジェクト../libm.soを混在させることはできません"というエラーがあります。それは何を意味するのでしょうか? EXTRA_LDFLAGSで--enable-threadsを実行できましたが、他の2つのフラグは、linuxのmanページにフラグが表示されていてもリンクできませんでした。 アイデア? ありがとう – itayb

+0

@itayb "こちらは失敗です" - あなたのリンクコマンドラインが間違っています。そこから '-r'を削除してください。 –

関連する問題