著者: Laurent Bercot 日付: To: dng 題目: Re: [Dng] The more things change, the more they remain the same
On 27/05/2015 16:49, Didier Kryn wrote: > I am slowly trying to assemble a minimal Linux development
> environment and the number of tools you need to just compile a C
> program is unbelievable. Clearly, the majority of developpers don't
> care about simplicity.
Amen to that.
I built my home router by hand. A vital piece of software for a router
is netfilter. It's very basic, very low-level, close to the kernel,
and I just needed ONE command-line tool: nftables.
I'm sorry to say that building netfilter by hand from scratch was the
single most painful journey into crap dependencies that I've ever taken,
and I've taken a few. I needed to install more software to actually
BUILD the stuff than my whole router takes to RUN.
Non-exhaustive list: autoconf, automake, bc, bison, curl, flex, gmp,
libmnl, libnftnl, libnl, libtool, libuuid, m4, pkg-config, readline,
sed, tar, xz, zlib. (Maybe some of these weren't used by nftables,
but some other stuff such as hostapd. I don't remember. And yes, the
busybox versions of commands such as sed, tar or xz were insufficient
because they're called with long or non-POSIX options. GNU or GTFO.)
I remember I managed to avoid installing Python to build libuuid -
I drew the limit at Python, and would have given up if I had had to
build that. But if you systematically disable every configure option
that mentions Python in every piece of sh^H^Hsoftware you build, at
some point you'll be able to progress without it.
Ah well. I can't hate too much, my software requires GNU make 4.0
(which is 4 years old), and I still received complaints about it
because people were trying to build it with GNU make 3.81 and failed. :)