2 ms·
This. CMake is another barrier to entry. what happened to a nice simple makefile? Been using just standard makefiles for literally 20 years. The only thing I
by csmuk 13y ago
This.
CMake is another barrier to entry.
what happened to a nice simple makefile? Been using just standard makefiles for literally 20 years.
The only thing I do is put a checkdeps dependency on which tests for the presence of dependencies, like autoconf but without the eye poking. Have built everything from small network servers to Motif behemoths doing only that.
- zurn 13y agoYou get no (compatible) make on MSVC. More imporantly, whith nontrivial dependencies to third party libraries, self-coded makefiles just break down. Cross-platform handling of dependencies is fragile and makes drudgery. You're liable to do worse than CMake - after wasting a lot of time and energy. CMake is more an alternative to GNU autoconf and pals, with the difference that it has first class support for things like MSVC and XCode.
- csmuk 13y agoI don't build for windows so that's moot for me. Well I do but not C. I've quite happily built makefiles that work on Linux, FreeBSD, Solaris and HP/UX that aren't fragile or laborious. It just takes appropriate knowledge of the platforms. I've built some stuff on OSX (small SDL project) and it wasn't too obtuse apart from some paths. CMake, much as all of these things, works up to a point at which point it tries desperately to kill you at every available opportunity.
- blueblob 13y agoIs nmake not compatible with make? I thought that it was. I haven't programmed C/C++ on Windows at all though, so I have no experience with this.
- zurn 13y agoMicrosoft "nmake" is unrelated to the AT&T-originated Unix "nmake", which you may be thinking of. (people rarely even attempt nontrivial Makefiles that are portable between BSD and GNU makes though...)
- krakensden 13y agoNot really- that, and it is incredibly feature poor.
- nicholassmith 13y agoWhenever I see a project with CMake it generally puts me off as I know it's liable to require some intervention from me to get it just building.