There are multiple reasons for this. Binutils, GDB and GCC are technically separate projects, although they are often supported by the same developers, who need to keep them in sync, in order to support many specific features. Secondly, for these projects there is no strict requirement of an "embodying" operating system. Particularly for Linux Mint or any complex distro it might be indeed an option to deduplicate common dependencies, because their locations are well-known. But these components are meant to have wider use within less integrated environments, such as embedded systems, cross-compilers, tools within an "alien" operating system e.g. MinGW. That's why they are called toolchains, because you could build them almost in the middle of nowhere, and they will work! ср, 21 дек. 2022 г. в 11:48, Alexei Sholomitskiy via Binutils < binutils@sourceware.org>: > Hello! > > I am a novice in Linux, so I'd like to understand, how it works > > and I started compile projects, follow by linuxfromscratch recommendations > > But I do it not in clear system, - on my Linux Mint > > //--------------------------------------------------------------- > > to build binutils - is very simple ! (according to > www.linuxfromscratch.org) > > but there were so many errors and warnings ... > > I don't understand, what is a reason I cannot build this project - > according different sites, it is easy! > > > so I decided to compile binutils step-by-step - and not statically, but > make shared libraries > > I have wrote a bash script about 150 lines (initially it was up to 600!) > to automatically download, extract, and *prepare for compiling* binutils > tar.gz archive. > > > For next step I am to build gdb server and gcc compiler > > and now I see directories libiberty, gold, libdecimal with the same > names I saw in bunutils > > > Could you explain me, these projects have the same components? > > why not to build binutils components as shared libraries and install > them to /lib directory to use in future? >