Le 04/07/2015 16:58, Roger Leigh a écrit :
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
_______________________________________________

I believe you when you write autotools are obsolete, but almost all essential packages use it. It is a nightmare when you are building with an alternate C library because there is very often some test which fails for a futile reason, and, you find yourself with no more clue than a bug contemplating an ophicleide.

About C++, I cannot resist to make a little joke: In math, +- means -, -- means + and ++ means +. But for languages ++ means - :-)

Another one: since C++ is a post-increment, the compiler upgrades just after it has compiled your program; too bad, sorry!

I dislike this language as you can understand. There are better, richer, and in the same time easier, high level languages. I don't put a blame on anybody for why it imposed itself everywhere; I think the reasons are very human. If you write programs in C++ you can be proud of yourself because it is very difficult and painful. For me it is like autotools, something you are forced to live with.

    Didier


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

Reply via email to