コンテンツにスキップ
メインメニュー
メインメニュー
サイドバーに移動
非表示
案内
メインページ
最近の更新
未作成ページ
おまかせ表示
ヘルプ
MonoBook
検索
検索
ログイン
個人用ツール
ログイン
ログアウトした編集者のページ
もっと詳しく
投稿記録
トーク
「
Ccache
」を編集中
ページ
議論
日本語
閲覧
編集
ソースを編集
履歴表示
ツール
ツール
サイドバーに移動
非表示
操作
閲覧
編集
ソースを編集
履歴表示
全般
リンク元
関連ページの更新状況
特別ページ
ページ情報
警告:
ログインしていません。編集を行うと、あなたの IP アドレスが公開されます。
ログイン
または
アカウントを作成
すれば、あなたの編集はその利用者名とともに表示されるほか、その他の利点もあります。
スパム攻撃防止用のチェックです。 けっして、ここには、値の入力は
しない
でください!
{{小文字}} '''ccache'''(しーきゃっしゅ)とは、各種[[コンパイラー]]が出力する[[オブジェクトファイル]]を[[キャッシュ]]し、無駄な[[コンパイル]]を省くことで再コンパイルを高速化するシステムである。 ccacheによる[[キャッシュ]]の判断は、[[ソースコード]]でも[[オブジェクトコード]]でもなく、[[プリプロセッサー]]の出力結果を用いているようである。 ccacheの原作者は[[samba]]の原作者としても有名な[[アンドリュー・トリジェル]]である。 == 対応するコンパイラー == 2012年7月18日現在、ccacheがサポートしている[[プログラミング言語]]は以下のとおり。 * [[C言語]] * [[C++]] * [[Objective-C]] * [[Objective-C++]] 公式サイトを見るといつの間にか[[Objective-C]]と[[Objective-C++]]が増えているという。 [[UNIX]]系[[OS]]で古くから使われる「ccコマンド」と「c++コマンド」への対応が基本となる。[[gcc]]もこれらのコマンドに対するエイリアスが用意されているので特に考える必要はないと思う。 ccacheの[[ソースコード]]を見ると、[[MinGW]]や[[Visual C++]]などの[[Windows]]環境への対応が試みられた形跡はあるが、2012年7月18日現在では完全体ではなく対応していないと思われる。 == ライセンス == ccacheの[[ライセンス]]は[[GPL v3]]である。 == 使い方 == === [[FreeBSD]] === <ref>http://linux-bsd-sharing.blogspot.jp/2009/01/howto-using-ccache-on-freebsd.html</ref> ==== portsからインストール ==== [[FreeBSD]]ではportsが用意されている。 * devel/ccache portsから直接インストールする場合は以下のようにする。 <source lang="bash"> # cd /usr/ports/devel/ccache # make install clean </source> portupgradeを使っている場合は以下のようにする。 個人的にはこちらを使っており、同時に「-p」オプションを付けることでパッケージも作っておく。 <source lang="bash"> # portinstall -p devel/ccache </source> ==== /etc/make.confの設定 ==== 「/etc/make.conf」を編集し、make実行時にccacheが自動発動する条件を指定しておく。 <source lang="text"> .if (!empty(.CURDIR:M/usr/src*) || !empty(.CURDIR:M/usr/obj*)) && !defined(NOCCACHE) CC=/usr/local/libexec/ccache/world-cc CXX=/usr/local/libexec/ccache/world-c++ .endif </source> ==== 環境変数の設定:cshの場合 ==== シェルにcshまたはtcshを使っている場合は「/root/.cshrc」を編集しccache関連の環境変数を設定しておく。キャッシュやログの保存場所や適宜設定すること。 <source lang="text"> setenv PATH /usr/local/libexec/ccache:$PATH setenv CCACHE_PATH /usr/bin:/usr/local/bin setenv CCACHE_DIR /var/tmp/ccache setenv CCACHE_LOGFILE /var/log/ccache.log </source> 上記の設定が完了したのち、sourceコマンドで環境変数を更新する。 <source lang="bash"> # source /root/.cshrc </source> ==== 環境変数の設定:zshの場合 ==== シェルにzshを使っている場合は「/root/.zshrc」を編集しccache関連の環境変数を設定しておく。キャッシュやログの保存場所や適宜設定すること。 <source lang="text"> export PATH=/usr/local/libexec/ccache:$PATH export CCACHE_PATH=/usr/bin:/usr/local/bin export CCACHE_DIR=/var/tmp/ccache export CCACHE_LOGFILE=/var/log/ccache.log </source> 上記の設定が完了したのち、sourceコマンドで環境変数を更新する。 <source lang="bash"> # source /root/.zshrc </source> === 共通 === ==== 統計情報を見る ==== 以下のコマンドでキャッシュのヒット率などを閲覧することができる。 <source lang="bash"> # ccache -s </source> ==== 統計情報をリセットする ==== 以下のコマンドで統計情報をリセットすることができる。なお統計情報が消えるのであってキャッシュ自体が消えるわけではない。 <source lang="bash"> # ccache -z </source> == 関連項目 == * [[コンパイラー]] == 参考文献 == <references/> == 外部リンク == * http://ccache.samba.org/ {{stub}}
編集内容の要約:
MonoBookへの投稿はすべて、他の投稿者によって編集、変更、除去される場合があります。 自分が書いたものが他の人に容赦なく編集されるのを望まない場合は、ここに投稿しないでください。
また、投稿するのは、自分で書いたものか、パブリック ドメインまたはそれに類するフリーな資料からの複製であることを約束してください(詳細は
MonoBook:著作権
を参照)。
著作権保護されている作品は、許諾なしに投稿しないでください!
このページを編集するには、下記の確認用の質問に回答してください (
詳細
):
1たす1は?(全角で入力してください)
キャンセル
編集の仕方
(新しいウィンドウで開きます)
このページで使用されているテンプレート:
テンプレート:Stub
(
編集
)
テンプレート:小文字
(
編集
)
本文の横幅制限を有効化/無効化