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