問題タブ [ccache]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - Xcode4でのccacheの使用
Xcode 4でccacheを使用して、C ++のビルド時間を改善する方法はありますか?
環境変数を使用してCCとCXXをccacheに設定しましたが、ccacheがXcode 4が出力するパラメーターの一部を認識しないため、ビルドが失敗します。
cmake - クラン + icecc + ccache
clang + icecc + ccache でビルドしようとしています。しかし、私はそれを機能させることができません。同じネットワーク上で gcc + icecc + ccache を使用してビルドに成功しました。
ソフトのバージョンは次のとおりです。
/usr/lib/ccache に clang sym リンクがあります:
/usr/lib/icecc/bin に clang sym リンクがあります:
だからここに私が試したことがあります:
私は PATH env var で最初に ccache を試しました:
しかし、コンパイルを配布しないだけです。
最初にiceccを試してみました:
そして、それは私にこの出力を与えます:
このスレッドhttps://bugzilla.redhat.com/show_bug.cgi?id=377761によると、それは正常です。
私はiceccだけを試してみました:
しかし、コンパイルを配布しないだけです。
だから私はここで立ち往生しており、それが不可能だと言っているものを見つけることができないので、誰かが解決策または代替解決策(iceccとは異なるもの)を持っている場合.
ありがとう。
gcc - CMake は gcc の代わりに ccache を使用したい
CMake
を使用して Ubuntu で C++ プロジェクトをコンパイルしようとしていますが、次のエラーが発生します。
gccとすべてがインストールされています(Ubuntuではビルドに不可欠です)が、ハードコーディングCMAKE_C_COMPILER
とCMAKE_CXX_COMPILER
CMakeLists.txtを除いて、cmakeがこれを行うのを止めることはできません。これは明らかな理由で嫌いです。ccache をインストールしようとしましたが、効果がありませんでした。
build - Waf によるキャッシング オプション (WAFCACHE および/または ccache)
Waf を使用するプロジェクトでは、ビルドの高速化を試したいと考えています。wafにはWAFCACHE
オプションがあることがわかりました。それで十分ですか、それとも追加WAFCACHE
でセットアップする必要がありますか?ccache
(彼らは一緒に働くことができますか)、またはWAFCACHE
[内部で]利用していccache
ますか?(Wafの本では、これについての説明はありません)
- ありがとう。
gcc - 同じコード ベースと複数のツールチェーンを持つ ccache
私たちのシステムは、3 つの異なるツールチェーン (gcc、icc、diab) での構築をサポートしています。この場合、 ccache を使用しても安全かどうかはわかりません。私の懸念は次のとおりです: gcc でビルドしてから diab でリビルドすると、ファイルとその依存関係が同じ場合に ccache がヒットしますか?
この場合、ファイルをdiabで再コンパイルしたいので、ヒットしたくありません。
makefile - コンパイラが ccache を使用しているかどうかを検出する
ccache は一部のコンパイラ オプションをサポートしていません (例: --coverage)。サポートされていないコンパイラ オプションがある場合、コンパイルは行われますが、キャッシュは使用されません。
ccache を有効にする方法は複数あります (PATH の変更、CC/CXX 環境変数の使用)。
コンパイラが ccache を使用しているかどうかを検出し、使用している場合はサポートされていないコンパイラ オプションを無効にしたいと考えています。
私が思いついた最高のものは次のようなものです:
これを改善する方法はありますか?
android - ワークスペース間で共有する Android ccache
あるワークスペースを使用して構築された ccache を共有して、別のワークスペースで使用できるようにしたいと考えています。これにより、ccache データの 1 つのコピーが同一のソース コードのコンパイルに使用されます。
例: 1) ワークスペース (home/user/source_code1) を作成しました。2)サーバーからコードを同期しました。3) USE_CCACHE=1 でコードをコンパイル
上記は私のccacheを構築します。今、私は次のことを行います
ケース 1: 1) ワークスペース (home/user/source_code2) を作成しました。2) サーバーからここで同一のソース コードを同期しました。3) 以前のワークスペースで行ったのと同じコンパイルを行いました。
ケース 2: 1) ワークスペース home/user/source_code1 を削除します。2) 以前のワークスペース (home/user/source_code1) を再作成します。2) サーバーからコードを再同期しました。3) USE_CCACHE=1 でコードをコンパイル
source_code2 のコンパイルで source_code1 からビルドされた ccache を使用したいのですが、同じワークスペースを削除して再作成するときは、既にビルドされている ccache でコンパイルを行う必要があります。同じことを達成するための指針は大歓迎です!
上記の両方のケースで現在見られる結果は、ccache がビルドされているにもかかわらず、使用されていないか、ccache にヒットがなく、新しいワークスペースが使用されるたびに構築され続けます。 -以前のソース コード (home/user/source_code1) を削除せずに同じワークスペースでコンパイルすると、ccache コンパイルがジャンプし、ビルド時間の短縮に役立つヒットが発生します。
新しいワークスペースが使用されるたびに ccache ヒットが表示されないのはなぜですか?
「キャッシュ ヒット (直接) やキャッシュ ヒット (前処理)」ではなく、常に「ccache ミス」をインクリメントします。また、「キャッシュ ヒット (ダイレクト)」は常に 0 です。
以下の変数を設定しました。
ここで何か不足している場合はお知らせください。