See also ebooksgratis.com: no banners, no cookies, totally FREE.

CLASSICISTRANIERI HOME PAGE - YOUTUBE CHANNEL
Privacy Policy Cookie Policy Terms and Conditions
CMake - Wikipedia

CMake

出典: フリー百科事典『ウィキペディア(Wikipedia)』

CMake
開発元: Andy Cedilnik, Bill Hoffman, Brad King, Ken Martin, Alexander Neundorf
最新版: 2.4.8 / 2008年1月23日
対応OS クロスプラットフォーム
種別: Software development tools
ライセンス BSDライセンス
公式サイト http://www.cmake.org/

CMakeはソフトウェアのビルドを自動化するためのクロスプラットフォームなシステムである。 UnixにおけるMakeに相当するものであり、ビルドプロセスは設定ファイルCMakeLists.txtによって完全に制御される。 最終的なソフトウェアを直接にはビルドしない点がMakeとは異なっており、 代わりに、よく使われている標準的なビルドファイル(UnixにおけるmakefileやWindows Visual C++におけるプロジェクト/ワークスペースなど)を生成する。 このため、開発者は自分の使いやすい開発環境(IDEなど)から利用できる。 ネイティブなビルド環境を利用する点がSConsなどのような類似システムと最も異なっている。 CMakeはさまざまな条件下でのソースコードのコンパイル、ライブラリやラッパーの生成、実行ファイルのビルドに対応できる。CMake は場所内ビルドと場所外ビルドをサポートするので、単一のビルドツリーに対して複数のビルドをサポートする[1]。CMake は静的および動的ライブラリのビルドもサポートする。

"CMake" という名前は "cross platform make"(クロスプラットフォームな make)の略である。 名前に "make" を使っているのにもかかわらず、CMake は make とは別で、Unix 開発で一般的な make システムよりもより高度なアプリケーションスイートである。

目次

[編集] 歴史

CMake was created in response to the need for a suitable cross-platform build environment for the Insight Segmentation and Registration Toolkit (ITK) funded by the United States National Library of Medicine as part of the Visible Human Project. It was influenced by an earlier system called pcmaker created by Ken Martin and other developers to support the Visualization Toolkit (VTK), an open-source 3D graphics and visualization system. To create CMake, Bill Hoffman at Kitware incorporated some key ideas from pcmaker, and added many more of his own, with the thought to adopt some of the functionality of the GNU build system. The initial CMake implementation was mid-2000, with accelerated development occurring in early 2001. Many improvements were due to the influences of other developers incorporating CMake into their own systems. For example, the VXL software community adopted CMake as their build environment, contributing many essential features. Brad King added several features in order to support CABLE and GCC-XML, a set of automated wrapping tools; and GE Corporate R&D required support of their testing infrastructure (DART). Other features were added to support the transition of VTK's build environment to CMake, and to support ParaView, a parallel visualization system to support the Advanced Computing Lab at Los Alamos National Laboratory.

[編集] 主な特徴

  • 設定ファイルは CMake スクリプトであり、スクリプトはソフトウェアのビルドに特化したプログラミング言語を使う。
  • CC++FortranJava に対する自動依存分析の組込み。
  • CMake スクリプト言語を通した SWIGQt や FLTK のサポート。
  • Built-in support for Microsoft Visual Studio .NET and past Visual Studio versions, including generation of .dsp, .dsw, .sln and .vcproj files,
  • 従来のタイムスタンプを使ったファイルの内容の変更の検知。
  • 並列ビルドのサポート。
  • クロスコンパイル
  • CMake が graphviz のダイアグラムを出力するのを利用した、すべての依存関係の全体図。
  • クロスプラットフォームなビルドのサポートと、Linux、他の POSIX システム(AIX*BSD システムHP-UXIRIX/SGIMinGW/MSYSSolaris を含む)、Mac OS XWindows 95/98/NT/2000/XP での動作確認。
  • DART、CTest や CPack というソフトウェアのテストとリリースのためのツール群との統合。

[編集] Cmakeを利用しているアプリケーション

  • Bullet Physics Engine
  • KDE (バージョン4から)
  • The Visualization Toolkit
  • Insight Segmentation and Registration Toolkit
  • ParaView
  • DevIL - オープンな画像ライブラリ
  • OpenSceneGraph
  • Scribus
  • Kicad
  • Drishti
  • PvPGN
  • Chicken
  • ParadisEO
  • Quantum GIS
  • lurc

[編集] 脚注

  1. ^ ここで場所内ビルド (in-place build) とは、ソースファイルが含まれるディレクトリ内でのビルドを指し、逆に場所外ビルド (out-of-place build) とはソースディレクトリ外でのビルドを指す。場所外ビルドでは、ソースディレクトリ内にコンパイルで生成されるオブジェクトファイルなどを入れられずに済み、ソースディレクトリをそのままの状態に保つことができる。つまりソースディレクトリと生成物の入るディレクトリとを別にできる。

[編集] 関連項目

  • Automake
  • SCons
  • VTK

[編集] 外部リンク


aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -