Wikipedysta:Topu/brudnopis: Różnice pomiędzy wersjami

Usunięta treść Dodana treść
-
-
Linia 1:
CMake - to wieloplatformowe narzędzie do automatycznej kompilacji. Jest podobne do Uniksowego programu make, w którym proces kompilacji jest kontrolowany przez specjalne pliki (Makefile). W przypadku CMake są to pliki o nazwie CMakeLists.txt. CMake, w odróżnieniu od make nie kompiluje kodu samodzielnie, tworzy tylko pliki z regułami kompilacji (np. plik Makefile dla programu make lub plik projektu dla programu Microsoft Visual Studio). Takie podejście pozwala zachować niezależność od platformy, na której kod będzie kompilowany.
 
CMake potrafi kompilować biblioteki (zarówno statyczne jak i dynamiczne) i pliki wykonywalne w dowolnej kolejności. Ponadto pozwala przeprowadzić wiele procesów kompilacji na podstawie tych samych źródeł.
 
Nazwa "CMake" to skrót od "Cross-platform Make".
{{advert|date=July 2011}}
{{Infobox software
| logo = [[File:CMake-logo-triangle-high-res.png|75px]]
Linia 18 ⟶ 12:
}}
 
'''CMake ''' is- anwieloplatformowe open-sourcenarzędzie [[buildopen systemsource]] developeddo bybudowania aplikacji rozwijane przez [[Kitware]]. thatUmożliwia enablesautomatyczną developers to[[Kompilacja automate compiling(informatyka)|kompilację]], testing[[testowanie andoprogramowania]] packagingoraz oftworzenie software[[Pakiet basedinstalacyjny|pakietów oninstalacyjnych]] specificationsza writtenpomocą inreguł textw filesplikach tekstowych. CMake canmoże controlkontrolować manywiele different[[Kompilator|kompilatorów]] compilersw andpołączeniu thez buildnatywnymi processśrodowiskami worksdo inbudowania conjunctionoprogramowania withtakimi native build environments such asjak [[make (software)|make]], Apple's [[Xcode]] andczy [[Microsoft Visual Studio]]. ItNarzędzie alsodo haspoprawnego minimaldziałania dependencies,wymaga requiring onlytylko [[C++]] on thew buildśrodowisku systemkompilacji.<ref name ="kde" />
 
CMake - to wieloplatformowe narzędzie do automatycznej kompilacji. Jestjest podobne do Uniksowego programu make, w którym proces kompilacji jest kontrolowany przez specjalne pliki ([[Makefile#Makefile|Makefile)]]. W przypadku CMake są to pliki o nazwie CMakeLists.txt. CMake, w odróżnieniu od make nie kompiluje kodu samodzielnie, tworzy tylko pliki z regułami kompilacji (np. plik Makefile dla programu make lub plik projektu dla programu Microsoft Visual Studio). Takie podejście pozwala zachować niezależność od platformy, na której kod będzie kompilowany.
==Features==
 
Nazwa "CMake" to skrót od "Cross-platform Make".
 
== See alsoHistoria ==
CMake was developed beginning in 1999 to provide a powerful, cross-platform build environment for the [[Insight Segmentation and Registration Toolkit|Insight Segmentation and Registration Toolkit (ITK)]]<ref>{{cite web|title=FLOSS Weekly 111: CMake|url=http://twit.tv/floss111|work=podcast|publisher=TWiT Network|accessdate=27 February 2011}}</ref> . The project is funded by the [[United States National Library of Medicine]] as part of the [[Visible Human Project]]. It was partially inspired by pcmaker, which was made by Ken Martin and other developers to support the [[VTK|Visualization Toolkit (VTK)]]. At Kitware, Bill Hoffman blended components of pcmaker with his own ideas, striving to mimic the Unix configure tool’s functionality. CMake was first implemented in 2000 and further developed in 2001. Continued development and improvements were fueled by the incorporation of CMake into developers’ own systems, including:
* The [[VXL]] Project
*[http://public.kitware.com/Cable/HTML/Index.html The CABLE]; features added by Brad King
*GE Corporate R&D for support of DART
 
Additional features were created when [[VTK]] transitioned to CMake for its build environment and for supporting [[ParaView]].
 
== Funkcje CMake ==
CMake can handle in-place and out-of-place builds, enabling several builds from the same source tree, and [[cross-compilation]]. The ability to build a directory tree outside the source tree is a key feature, ensuring that if a build directory is removed, the source file remains unaffected.
 
Linia 29 ⟶ 35:
CMake can generate [[makefile]]s for many platforms and IDEs including [[Unix]], [[Windows]], [[Mac OS X]], [[MSVC]], [[Cygwin]], [[MinGW]] and [[Xcode]].
 
== Proces budowania aplikacji ==
==Build process==
The build process with CMake takes place in two stages. First, standard build files are created from configuration files. Then the platform's native build tools are used for the actual building.<ref name="kde" />
 
Each build project contains a CMakeLists.txt file in every directory that controls the build process. The CMakeLists.txt file has one or more commands in the form COMMAND (args...), with COMMAND representing the name of each command and args the list of arguments, each separated by white space. While there are many built-in rules for compiling the software libraries ([[static library|static]] and [[dynamic library|dynamic]]) and executables, there are also provisions for custom build rules. Some build dependencies can be determined automatically. Advanced users can also create and incorporate additional makefile generators to support their specific compiler and OS needs.
 
== Programy wykorzystujące CMake ==
==Origins==
CMake was developed beginning in 1999 to provide a powerful, cross-platform build environment for the [[Insight Segmentation and Registration Toolkit|Insight Segmentation and Registration Toolkit (ITK)]]<ref>{{cite web|title=FLOSS Weekly 111: CMake|url=http://twit.tv/floss111|work=podcast|publisher=TWiT Network|accessdate=27 February 2011}}</ref> . The project is funded by the [[United States National Library of Medicine]] as part of the [[Visible Human Project]]. It was partially inspired by pcmaker, which was made by Ken Martin and other developers to support the [[VTK|Visualization Toolkit (VTK)]]. At Kitware, Bill Hoffman blended components of pcmaker with his own ideas, striving to mimic the Unix configure tool’s functionality. CMake was first implemented in 2000 and further developed in 2001. Continued development and improvements were fueled by the incorporation of CMake into developers’ own systems, including:
* The [[VXL]] Project
*[http://public.kitware.com/Cable/HTML/Index.html The CABLE]; features added by Brad King
*GE Corporate R&D for support of DART
 
Additional features were created when [[VTK]] transitioned to CMake for its build environment and for supporting [[ParaView]].
 
== Notable applications ==
<div style="-moz-column-count:3; column-count:3;">
* [[Allegro library]]
Linia 94 ⟶ 92:
</div>
 
==Where toZobacz learnteż CMake==
Learning resources for CMake include:
*[http://www.cmake.org/Wiki/CMake CMake Wiki]
*Online [http://www.cmake.org/cmake/help/documentation.html documentation] and [http://www.cmake.org/cmake/help/examples.html examples]
*Mastering CMake book
*[http://www.vtk.org/Wiki/CMake/Examples CMake Examples Wiki]
 
== See also ==
{{Portal|Free software}}
* [[List of build automation software]]
* [[GNU build system]]
Linia 109 ⟶ 99:
* [[Waf]]
 
{{Przypisy}}
==References==
 
== Linki zewnętrzne ==
==External links==
* [http://www.cmake.org/ CMake home page]
* [http://www.kitware.com/ Kitware]
Linia 119 ⟶ 109:
* [http://www.cmake.org/cmake/help/examples.html example code]
* [http://www.cmake.org/cmake/help/mailing.html mailing lists]
Learning resources for CMake include:
*[http://www.cmake.org/Wiki/CMake CMake Wiki]
*Online [http://www.cmake.org/cmake/help/documentation.html documentation] and [http://www.cmake.org/cmake/help/examples.html examples]
*Mastering CMake book
*[http://www.vtk.org/Wiki/CMake/Examples CMake Examples Wiki]
 
 
{{DEFAULTSORT:Cmake}}
[[:Category:Build automation]]
[[:Category:Compiling tools]]
 
[[de:CMake]]
[[plen:CMake]]
[[es:CMake]]
[[fr:CMake]]
Linia 131 ⟶ 127:
[[nl:CMake]]
[[ja:CMake]]
[[pl:CMake]]
[[pt:CMake]]
[[ru:CMake]]