GNU Binutlis 2.37 has been released
sourceware.org
sourceware.org
https://sourceware.org/bugzilla/show_bug.cgi?id=28058
Many Linux distributions use strip as part of their package builds, so it can have a large impact in some cases.
It also includes a link to a handy text jumbler written in AWK: http://www.stevesachs.com/jumbler.cgi
(I didn't opt to randomly choose the middle letters, but instead sorted them, using reverse alphabetical order when the word came out the same. This makes some words insanely difficult--functional and interpretation are impossible to pick out so mangled, and I wrote the entire paragraph before pasting it).
If you thought that was too hard to read, here's the original:
Actually, that is not true. It seems like it ought to be, but that is in large part due to only very slight munging done to the text. If you try harder, and apply a more aggressive transformation to the text, you will find that it is no longer easy to read the text. Especially note how the longer words in this sample are far harder to read than those that are shorter; it is the omnipresence of the small, functional words that lends itself to easy interpretation, and longer words (more heavily mangled) become exceedingly difficult challenges to puzzle out what they were originally intended to represent.
I speedread though so maybe it's because I'm already used to not actually focusing on letters and taking in the gestalt instead. It's kind of like how it's easy to tell the equality of two sets written in different orders up to about size 4, and past that it gets tricky. This is why the classic tick mark system uses 4 ticks and then a slash for the fifth too.
"Fixes: Little here, little there, little everywhere"
In this situation, there are plenty of C programmers out there, so most developers don't need to know anything about these tools.
It would take some time, and years to get it all (they are massive, especially when you get to obscure targets and non unixy operating systems), but it would not be that difficult from a know-how perspective.
Most of the problems they solve are well understood. They are terrific tools, and very mature, so getting the long tail of features right might take some time.
But overall, not that hard for many people.
For example, LLVM has alternates that aren’t quite drop in compatible, but are close.
What that means is that you are not in full control of your entire stack...do you have an idea how to reimplement, improve, or even just fix your keyboard's controller? Your link to the internet, from the way "call before drilling" protection is laid, to HTTP 2? The way your food is trustworthy; heck, the way your food even exists?
Indeed: nobody is in full control in their own life. Scary. Yet also powerful.
I also understand very well that I would have a very hard time feeding me and my family alone. But I knew where to start.
If we apply this metaphor to binutils, how many developers even know what ELF or DWARF stand for and how they would have to use them? How many know what an assembler and linker do and how one would approach to get one if needed?
(Also, why stop at assembly - a macrolanguage, even though it strongly corresponds to a specific architecture?)
I recall that it was a promising and higher performance for LD, but I heard that it had stagnated, and Fedora stopped using it. Is it getting any better? A better performing linker may be a nice benefit for large C++ projects.
It's a very comfortable order of magnitude faster than gold, and starting to become pretty stable.