Pentru a construi proiecte de automatizare utilizate în mod tradițional, sisteme de asamblare, cum ar fi face pe Unix cum ar fi sistemele și nAsigurați pentru compilator Microsoft. În mod tradițional scris fișiere pentru a construi proiectul în cadrul acestor sisteme nu este o sarcină banală. Desigur, în folosind doar Mictosoft Visual Studio chiar nu poate suspecta existența acestor fișiere ca un mediu de dezvoltare integrat suficient de confortabil ascunde în bucătărie, lăsând exteriorul câteva casete de dialog, și butonul Build. Dar pentru proiecte complexe, folosind o mulțime de biblioteci terțe părți și proiecte cross-platform, această abordare este adesea considerată inacceptabilă.
Pe scurt make-fișier este o descriere a succesiunii acțiunilor necesare pentru a atinge un anumit scop, cum ar fi pentru a compila programul. Pseudocod acest lucru ar arata ceva de genul:
Ce ar trebui să fac?
Colecta programul hello_world.
Cum de a face acest lucru?
Ia hello_world.cpp și fișierele hello_world.h și pentru a rula compilatorul prin trecerea acestora ca parametri.
Ce să faci când compilator a terminat?
Ia fișierele obiect rezultate funcționează hello_world.o compilator și linker-ul începe dându-i fișierul.
Fiecare subproiect poate avea propria sa Makefile, iar principalul make-fișier va merge recursiv subproiecte, completând dosarul său de asamblare, iar apoi construi proiectul de la aceste componente.
Se pare simplu, probleme apar tot mai multe probleme:
- dependențe Rezolvarea apar între părți ale proiectului
- complexitatea sintactică și ambiguitatea clasice make-fișiere
- Legarea la o anumită utilitate, asamblarea automată și ca urmare a intoleranței la alte platforme
Propun să ia în considerare CMake. atât de ușor de învățat, intuitiv, și puternic instrument de cross-platform, care rezolvă toate cele trei probleme. A se vedea mai jos pentru detalii.
CMake în sine nu efectuează asamblarea proiectului, generează numai din fișierul de asamblare de make-fișier pentru platforma specifică. Acesta poate fi un proiect al Microsoft Visual Studio, nAsigurați Makefile, proiectul XCode pentru MacOS, Unix Makefile, Watcom Makefile, Eclipse, sau proiect CodeBlocks. Mai mult decât atât fișierele CMake se deschide ca un proiect de dezvoltare câștigă popularitate în rândul QtCreator.
Acest fișier este de obicei numit CMakeLists.txt și conține comenzi ușor de înțeles CMake. După finalizarea
Obținem un proiect pe care îl puteți deschide în IDE sau Makefile care vă permite să construiască proiectul prin rularea sistemului adecvat construi (a face, nAsigurați, wmake). Este întotdeauna posibil să se precizeze în mod explicit că programul ar trebui să genereze specificarea cheie -G cu parametrul dorit (doar rulați cmake. Pentru a vedea opțiunile disponibile).
În cazul în care pentru a obține CMake?
Bună ziua, lume!
Propun să ia în considerare un simplu CMake-fișier: