:: Re: [DNG] Dng Digest, Vol 10, Issue…
Forside
Slet denne besked
Besvar denne besked
Skribent: Roger Leigh
Dato:  
Til: dng
Emne: Re: [DNG] Dng Digest, Vol 10, Issue 12
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