Discussion:
Make vs. Cmake
(Wiadomość utworzona zbyt dawno temu. Odpowiedź niemożliwa.)
Seweryn Habdank-Wojewódzki
2009-10-12 08:38:25 UTC
Permalink
Witam,

Mam pytanie jakie jest aktualne porownanie Make i Cmake?
Kiedys (2-3 lata temu) mialem makefile ktorego nie moglem
przenisc na Cmake - ze wzgledu na jakies ograniczenia
z przekazywaniem parametrow i jakies automatyczne zabawy
na nazwach plikow.

Ciekawi mnie jakie TERAZ sa roznice. Czy Cmake pokrywa
wszystkie ficzery Make?

Pozdrawiam,
Seweryn Habdank-Wojewodzki.
Mirosław Habarta
2009-10-12 17:05:25 UTC
Permalink
Post by Seweryn Habdank-Wojewódzki
Witam,
Mam pytanie jakie jest aktualne porownanie Make i Cmake?
Porównywanie tych dwóch programów to chyba nie ma sensu, bo
służą do czego innego. To tak, jakby porównywać kompilator z
linkerem. Cmake to można by porównać do "boostowego" jam
scons, autotools, qmake ....
Post by Seweryn Habdank-Wojewódzki
Kiedys (2-3 lata temu) mialem makefile ktorego nie moglem
przenisc na Cmake - ze wzgledu na jakies ograniczenia
z przekazywaniem parametrow i jakies automatyczne zabawy
na nazwach plikow.
Ciekawi mnie jakie TERAZ sa roznice. Czy Cmake pokrywa
wszystkie ficzery Make?
Z tego względu, że cmake i make działają na innych poziomach,
myślę, że bezpośrednie tłumaczenie 1 <-> 1 nie jest możliwe.
Zapewnie chodzi Ci więc o to, czy mając makefila, można zrobić
CMakeLists.txt , który realizuje podobną funkcjonalność.
No, ale dopóki tego makefila nie pokażesz, to nikt na tak ogólnie
sformułowane pytanie nie odpowie.

Trzeba pamiętać, że cmake dostarcza swego rodzaju języka programowania,
o dość rozbudowanych możliwościach. Składnia jest dość prosta, ale nie wszystko
wynika jasno z ogólnie dostępnej dokumentacji. Można kupić książkę
"Mastering cmake" , ale co w niej jest - nie widziałem. Osobiście wspomagam
się studiowaniem przykładów wziętych z innych projektów, np. paraview, vtk.
Post by Seweryn Habdank-Wojewódzki
Pozdrawiam,
Seweryn Habdank-Wojewodzki.
Pozdrawiam,
M.H.
Seweryn Habdank-Wojewódzki
2009-10-13 05:28:28 UTC
Permalink
Witam,
Post by Mirosław Habarta
Porównywanie tych dwóch programów to chyba nie ma sensu, bo
służą do czego innego. To tak, jakby porównywać kompilator z
linkerem. Cmake to można by porównać do "boostowego"  jam
  scons, autotools, qmake ....
Slabo sie znam na detalach kalsyfikacji takich tooli :-).
Post by Mirosław Habarta
Z tego względu, że cmake i make działają na innych poziomach,
myślę, że bezpośrednie tłumaczenie 1 <-> 1 nie jest możliwe.
Hmm... no wlasnie dochodza mnie sluchy, ze "Cmake" moze zastapic
makefile. Czyli musi byc czyms wiecej. Sam nie jestem przekonany tak
do samego konca. Slyszalem tez nie tylko makefile, ale w ogole
konfiguracja autotools moze zniknac.
Post by Mirosław Habarta
No, ale dopóki tego makefila nie pokażesz, to nikt na tak ogólnie
sformułowane pytanie nie odpowie.
Troche nie moge pokazac :-(. Mniej wiecej makefile skalada sie z
czytania listy plikow *.cpp - automatycznie wszystkich, ktore sa w
folderze.
Nastepuje kompilacja. Nastepnie sa one linkowane do jednego .so.
Tych make file jest kilka. Nastepnie jest makefile w nad folderze,
ktory wola wszystkie nizej polozone makefile.

Pozdrawiam,
Seweryn Habdank-Wojewodzki.
Daniel Janus
2009-10-13 05:55:46 UTC
Permalink
Post by Seweryn Habdank-Wojewódzki
Tych make file jest kilka. Nastepnie jest makefile w nad folderze,
ktory wola wszystkie nizej polozone makefile.
Oj, brzydkie.

http://miller.emu.id.au/pmiller/books/rmch/
--
Daniel Janus <***@danieljanus.pl> | http://danieljanus.pl
"Pamięć jest dobra w 100%. Firma to `Warranty Void If Removed' Dane Techniczne
Pamięć: 128 MB RAM TYP:SDRAM PC:133"
-- opis aukcji na allegro
Seweryn Habdank-Wojewódzki
2009-10-13 07:04:38 UTC
Permalink
Witam,
Post by Daniel Janus
http://miller.emu.id.au/pmiller/books/rmch/
Bardzo ciekawe. Przez przypadek nie mialem problemow, bo:
1. Makefile podrzedne sa tylko o jeden poziom nizej (poki co),
2. Makefile na samej gorze robi make clean i make all dla wszystkich
pod projektow. W zasadzie to bylo nie do uniknienia, bo tam
jest troche zaleznosci na poziomie headerow i bibliotek dzielonych,
wiec lepiej miec swierzy kod - a server i tak to robi sam.

Pozdrawiam,
Seweryn Habdank-Wojewodzki.

Loading...