On 04/07/2015 12:23, Nate Bargmann wrote:
* On 2015 04 Jul 05:02 -0500, John Jensen wrote:

A lot of software is built using GNU Autotools.  It is a very extensive
system that has a very steep learning curve in proportion with its
power.  The GNU documentation serves more as a reference manual than a
HOWTO, however, one site I found very useful was the Autotools Myth
Buster:

https://autotools.io/index.html

More packages are using Cmake, but unless the package you're interested
in is using it, you can safely avoid its details for now.  Also, if
you're developing in Qt you'll need to be familiar with Qmake.  These
are just the more frequently found alternatives to the Autotools.  The
alternative is writing Makefiles by hand.

Mostly agreed on all the points you made. But WRT the autotools, they are such a baroque collection of tools, requiring knowledge of a minimum of five languages to use effectively (Bourne shell, m4, make, autoconf and automake), I can't really recommend learning them over learning CMake. CMake is not the cleanest scripting language either, but you only need to learn one rather than five; on top of that, it's portable to more systems, more powerful and vastly simpler to learn. Unless you're heavily invested in existing autotools-using projects, I don't think it's worth the pain, to be honest. [I say this as an autotools user of 15 years, who switched his projects to CMake over the last two years.]

It not that the autotools don't work, but they are still focussed on solving the portability problems of two decades back; CMake is much better at solving the portability problems of the present.

And with respect to learning C, it's certainly useful. However, I would highly recommend also learning other languages such as C++ and Python. In the free software world, C use is still widespread, but it's a 45 year old language which has been improved upon many times over by other languages, but despite that we continue to use it in situations where it's inappropriate. Don't limit yourself. If you've not used C++ before, try out C++11/14 and look at something like http://shop.oreilly.com/product/0636920033707.do -- it's a much nicer language than it used to be, and you can be massively more productive in it than with C.


Regards,
Roger
_______________________________________________
Dng mailing list
[email protected]
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng

Reply via email to