#binutils — Public Fediverse posts
Live and recent posts from across the Fediverse tagged #binutils, aggregated by home.social.
-
「 The GNU Project has announced the release of GNU Binutils 2.47, a core component of the GNU toolchain, alongside gcc, glibc, and gdb, introducing additional RISC-V extension support, new assembler and linker options, and improvements to tools such as objdump and readelf 」
https://linuxiac.com/gnu-binutils-2-47-released-with-new-risc-v-improvements/
-
「 The GNU Project has announced the release of GNU Binutils 2.47, a core component of the GNU toolchain, alongside gcc, glibc, and gdb, introducing additional RISC-V extension support, new assembler and linker options, and improvements to tools such as objdump and readelf 」
https://linuxiac.com/gnu-binutils-2-47-released-with-new-risc-v-improvements/
-
One for fellow #ARM #Thumb and #gnu #binutils users...
Say I want to load the value "0x22000000" into R3.Using "LDR R3, =0x22000000" drops the 32bit value in the literal pool, which encodes to 6 bytes.
A better encoding is: "MOVS R3, #0x88, LSLS R3, R3, #22" which saves 2 bytes.Is there a pseudo-op or macro to generate the best possible encoding with GNU AS?
(I've been spoiled by RISC OS assemblers which kinda can, but now I'm writing code which others need to be able to assemble...)
-
One for fellow #ARM #Thumb and #gnu #binutils users...
Say I want to load the value "0x22000000" into R3.Using "LDR R3, =0x22000000" drops the 32bit value in the literal pool, which encodes to 6 bytes.
A better encoding is: "MOVS R3, #0x88, LSLS R3, R3, #22" which saves 2 bytes.Is there a pseudo-op or macro to generate the best possible encoding with GNU AS?
(I've been spoiled by RISC OS assemblers which kinda can, but now I'm writing code which others need to be able to assemble...)
-
-
x86-64 Playground – An online assembly editor and GDB-like debugger
https://x64.halb.it/
#ycombinator #Gdb #x86_64 #x64 #CTF #assembly #debugger #Fasm #Binutils #webassembly #wasm_binutils #wasm_assembler -
x86-64 Playground – An online assembly editor and GDB-like debugger
https://x64.halb.it/
#ycombinator #Gdb #x86_64 #x64 #CTF #assembly #debugger #Fasm #Binutils #webassembly #wasm_binutils #wasm_assembler -
Today's `binutils-gdb` bug in `ld.bfd` is https://sourceware.org/PR33530.
There `ld.bfd` spends a ton of RAM and CPU time on inputs with huge section counts. In the example in initial comment `ld.gold` spends 50ms where `ld.bfd` spends 5s.
On real examples produced by haskell compiler with `-fsplit-section -optl-Wl,--gc-sections` it translates to extra minutes of link time on larger binaries.
I think it's an `ld` garbage collection bug.
-
Today's `binutils-gdb` bug in `ld.bfd` is https://sourceware.org/PR33530.
There `ld.bfd` spends a ton of RAM and CPU time on inputs with huge section counts. In the example in initial comment `ld.gold` spends 50ms where `ld.bfd` spends 5s.
On real examples produced by haskell compiler with `-fsplit-section -optl-Wl,--gc-sections` it translates to extra minutes of link time on larger binaries.
I think it's an `ld` garbage collection bug.
-
One Open-source Project Daily
Simple makefile-based build for musl cross compiler
https://github.com/richfelker/musl-cross-make
#1ospd #opensource #binutils #crosscompiler #gcc #musl #muslcross #targetmusl #toolchain -
One Open-source Project Daily
Simple makefile-based build for musl cross compiler
https://github.com/richfelker/musl-cross-make
#1ospd #opensource #binutils #crosscompiler #gcc #musl #muslcross #targetmusl #toolchain -
The next GNU Tools Cauldron, taking place in Porto, Portugal, on September 26-28, 2025.
https://inbox.sourceware.org/gcc/87o6u[email protected]/
https://gcc.gnu.org/wiki/cauldron2025
https://gnu-tools-cauldron.org/Some #Sourceware Project Leadership Committee members and @conservancy staff should also be there.
#GCC #GDB #binutils #CGEN #DejaGnu #newlib #glibc #poke #libabigail #elfutils
-
All I want is just a collection of #binutils, #GCC, #llvm+#clang, #glibc and #musl that are "free standing" / relocatable, which I can pack into a #squashfs image to carry around to my various development machines.
You'd think that for something as fundamental as compiler infrastructure with over 60 years of knowledge, the whole bootstrapping and bringup process would have been super streamlined, or at least mostly pain free by now.
Yeah, about that. IYKYK
-
All I want is just a collection of #binutils, #GCC, #llvm+#clang, #glibc and #musl that are "free standing" / relocatable, which I can pack into a #squashfs image to carry around to my various development machines.
You'd think that for something as fundamental as compiler infrastructure with over 60 years of knowledge, the whole bootstrapping and bringup process would have been super streamlined, or at least mostly pain free by now.
Yeah, about that. IYKYK
-
Linux 6.16 will need GCC 8 and Binutils 2.30 to build.
#Linux #Kernel #LinuxKernel #Computers #Laptops #TechNews #TechUpdates #GCC #Clang #LLVM #Binutils
https://officialaptivi.wordpress.com/2025/06/01/linux-6-16-needs-gcc-8-and-binutils-2-30/
-
Linux 6.16 will need GCC 8 and Binutils 2.30 to build.
#Linux #Kernel #LinuxKernel #Computers #Laptops #TechNews #TechUpdates #GCC #Clang #LLVM #Binutils
https://officialaptivi.wordpress.com/2025/06/01/linux-6-16-needs-gcc-8-and-binutils-2-30/
-
Linux 6.16 needs GCC 8 and Binutils 2.30
The upcoming version of Linux now needs at least GCC 8 and GNU Binutils 2.30 to be able to successfully build, because this was needed to remove all legacy code that provided workarounds for build systems prior to GCC 8, which became a maintenance burden. Previously, GCC 5 and Binutils 2.25 were required to build Linux, and the latest version, 6.15, had this requirement before 6.16 increased it.
GCC 8 and Binutils 2.30 brought new features that Linux 6.16 needed, while LLVM Clang 13 was the minimum requirement for Linux in case you’ll need to use LLVM instead of the legacy GCC.
You can see the merge request below.
See merge requestThe reasoning for this minimum version requirement bump is here:
x86 already uses gcc-8 as the minimum version, this changes all other architectures to the same version. gcc-8 is used is Debian 10 and Red Hat Enterprise Linux 8, both of which are still supported, and binutils 2.30 is the oldest corresponding version on those.
Ubuntu Pro 18.04 and SUSE Linux Enterprise Server 15 both use gcc-7 as the system compiler but additionally include toolchains that remain supported.
With the new minimum toolchain versions, a number of workarounds for older versions can be dropped, in particular on x86_64 and arm64. Importantly, the updated compiler version allows removing two of the five remaining gcc plugins, as support for sancov and structeak features is already included in modern compiler versions.
I tried collecting the known changes that are possible based on the new toolchain version, but expect that more cleanups will be possible.
Since this touches multiple architectures, I merged the patches through the asm-generic tree.”
#Binutils #GCC #Linux #LinuxKernel #news #Tech #Technology #update
-
Sourceware Survey 2025 Results
In the end we got 103 (!) responses with a nice mix of developers, users and maintainers from various hosted projects.
https://sourceware.org/survey-2025
#binutils #cygwin #dwarfstd #elfutils #gcc #gdb #glibc #libabigail #newlib #systemTap #valgrind #bzip2 #libffi #dwz #debugedit #gnupoke #bunsen #lvm2 #annobin #gnu-gabi #cgen #kawa #insight #pacme
-
Introduction to GNU Binutils: A Beginner's Guide #Binutils #Linux #Assembler #Linker #Debugger #ELF #ObjectFiles #ExecutableFiles #AssemblyLanguage #Opensource #Linuxhowto #Linuxbasics #Commandline
https://ostechnix.com/introduction-to-gnu-binutils/ -
Introduction to GNU Binutils: A Beginner's Guide #Binutils #Linux #Assembler #Linker #Debugger #ELF #ObjectFiles #ExecutableFiles #AssemblyLanguage #Opensource #Linuxhowto #Linuxbasics #Commandline
https://ostechnix.com/introduction-to-gnu-binutils/ -
#Binutils 2.44 has been released (#GNU) https://gnu.org/software/binutils
-
#Binutils 2.44 has been released (#GNU) https://gnu.org/software/binutils
-
GNU #Binutils 2.44 is out:
https://lists.gnu.org/archive/html/info-gnu/2025-02/msg00001.html
Some highlights:
* Assembler:
- Support for new architecture extensions for AArch64, Risc-V and x86.* Linker:
- This now supports mixed LTO and non-LTO object files in relocatable output.
- The ELF forms of the linker support a --image-base=<ADDR> option for compatibility with LLD.[…] does not contain the sources for the gold linker […] now deprecated and will eventually be removed unless volunteers step forward […]
-
Rust custom Triplet
Целевые триплеты описывают платформу, на которой выполняется код, и являются основной концепцией системы сборки GNU. Обычно триплет содержит три поля: название семейства/модели CPU, поставщика и имя операционной системы. Кроме того, триплет может иметь дополнительное поле, отражающее Application Binary Interface (ABI), например: gnu, gnueabihf, gnu_ilp32.
-
Please boost this one if you can.
Anyone here a, or know a, GNU binutils wizard? ( #binutils #gnu )
I have software that depends on binutils honoring the the -z/--disassemble-zeroes option. My testing indicates that starting in binutils 2.41 (extending to 2.42) that option is ignored.
I have a downloadable test tarball that'll exercise the code, broken or not, available upon request.
This MIGHT be #illumos , but I tested binutils 2.38 on ubuntu-22 and it passed, so I'm doubting that!
-
Please boost this one if you can.
Anyone here a, or know a, GNU binutils wizard? ( #binutils #gnu )
I have software that depends on binutils honoring the the -z/--disassemble-zeroes option. My testing indicates that starting in binutils 2.41 (extending to 2.42) that option is ignored.
I have a downloadable test tarball that'll exercise the code, broken or not, available upon request.
This MIGHT be #illumos , but I tested binutils 2.38 on ubuntu-22 and it passed, so I'm doubting that!
-
#Binutils 2.43.1 has been released (#GNU) https://gnu.org/software/binutils
-
#Binutils 2.43.1 has been released (#GNU) https://gnu.org/software/binutils
-
#binutils and #gdb now also generate code snapshots on https://snapshots.sourceware.org
https://snapshots.sourceware.org/binutils/trunk
https://snapshots.sourceware.org/gdb/trunk -
I updated my #gcc tip-of-tree package for #OpenBSD. Installs GCC 15.0.0 and #binutils 2.42.50 (all but ld, gold, and gdb) from about 3 hours ago. Includes compilers for Ada, C, C++, D, Fortran, Modula-2, Objective-C and Objective-C++. Only amd64 (sorry! I could probably do arm64 and riscv64 if I had fast-enough machines...).
Installs to /usr/local/gnu so it won't conflict with any other gcc packages you might have installed.
https://github.com/ibara/ports/releases/download/v1.0/gcc-devel-15.0.0pl20240613p0.tgz
-
I updated my #gcc tip-of-tree package for #OpenBSD. Installs GCC 15.0.0 and #binutils 2.42.50 (all but ld, gold, and gdb) from about 3 hours ago. Includes compilers for Ada, C, C++, D, Fortran, Modula-2, Objective-C and Objective-C++. Only amd64 (sorry! I could probably do arm64 and riscv64 if I had fast-enough machines...).
Installs to /usr/local/gnu so it won't conflict with any other gcc packages you might have installed.
https://github.com/ibara/ports/releases/download/v1.0/gcc-devel-15.0.0pl20240613p0.tgz
-
Yesterday:
- Between the power being out & my brain being broken, not muchToday:
- Updated https://www.lukeshu.com/imworkingon/ to get "last updated" for pipermail mailinglist archives
- Wrote some notes on email message threading https://www.lukeshu.com/blog/message-threading.html
- Wrote a bit at https://www.lukeshu.com/imworkingon/ about why this week's work on #GNU #binutils is important. #supply_chain_attackIf any of this seems useful or important to you, plz consider throwing a few dollars my way https://www.lukeshu.com/sponsor/
-
What I've been doing the last 3 days:
- Working on a `./bootstrap` for #GNU #binutils ...What I'm doing today:
- ...finished and sent it! https://sourceware.org/pipermail/binutils/2024-June/134608.html
- Finally responding to feedback on other changes I've sent off. -
What I did yesterday, what I'm hopefully wrapping up today:
- Tracking down where all of the bundled files in #GNU #binutils came from, and writing tooling to keep track of them: https://fosstodon.org/@lukeshu/112567161882177886
-
@[email protected]
I've tracked down where *almost* all the bundled files in
#GNU #binutils came from; pinning down1 rev of autoconf
1 rev of gettext
1 rev of libtool
1 rev of readline
2 revs of automake
2 revs of GNU config
2 revs of texinfo
2 revs of gnulib
2 revs of zlib
7 revs of GCCStill TODO: (not hard, just not done yet)
config.rpath
config/ChangeLog
config/ax_lib_socket_nsl.m4
config/bootstrap-hwasan.mk
ltmain.sh
readline/readline/support/config.rpath
readline/readline/support/mkinstalldirs -
ltmain.sh isn't a source file, it's the compiled output of a bunch of m4 code from libtool. The version of ltmain.sh in #GNU #binutils does not correspond to any version of the libtool sources (release tarballs or libtool.git). We don't have the Complete Corresponding Source to binutils' ltmain.sh! #GPLviolation :P
(It has a --no-finish flag that no libtool sources have ever had.)
-
@goku12 ta, I heard about that more broadly and keen to give it a whirl from OpenRC perspective.
Hit a blocker on the migration process though, can't rebuild binutils under new profile.
https://forums.gentoo.org/viewtopic-p-8821293.html
Hope to work through the problem soon though.
-
Toolchain Necromancy: Past Mistakes Haunting ASLR
“Starting from 2001 and continuing until 6 years ago with version 2.32, #binutils' ld linker set too large of an alignment on ELF binary sections. With a #Linux kernel >= 5.10 or glibc >= 2.35, binaries/libraries that were built with the older toolchain act as timebombs against #ASLR, making brute-force attacks easier on 64-bit binaries and reducing randomness to nothing in some cases for 32-bit binaries.”
https://grsecurity.net/toolchain_necromancy_past_mistakes_haunting_aslr
-
#Binutils 2.42 has been released (#GNU) https://gnu.org/software/binutils
-
Today's bug is arguably not a bug but at least a behavior change in `binutils-2.42` `gas`: https://sourceware.org/PR31319
There `.arch i386` is not accepted anymore by `gas --64` targeting `x86_64-unknown-linux-gnu`.
This broke the build of `kexec-tools-2.0.27`.
-
A new #blog post appears!
Can GCC use Clang as its assembler?
Come with me on this wild ride to use #GCC without the #GNU #binutils and instead use #clang and the #LLVM binutils.
https://briancallahan.net/blog/20240122.html
#compile #compiler #compilers #dlang #FreeBSD #OpenBSD #NetBSD #DragonFlyBSD #Linux #Solaris #Illumos #Unix #program #programming #programmer #code #coding
-
Ця оптимізація відбувається завдяки, тому що
C++, на відміну відGoіRust, привʼязує свою стандартну бібліотеку динамічно. Через це знижується сумісність бінарних файлів. Зібраний бінарний файл наArchз використаннямGCC13, наDebianне запускається, тому що у ньому ще досі 12 версія компілятора, відповідно і старіша версія бібліотекиlibstdc++.Мені стало цікаво скільки буде займати місця файл програми коли ми прилінкуємо цю бібліотеку статично. Це можна зробити додавши
-staticдо команди лінкера. Збирати будемо у режимі випуску. Якщо ми привʼяжемо динамічно, то розмір буде547.664KiB, а якщо статично, то3.214MiB. Ми можемо зменшити обидва ці файли видаливши з них зайву інформацію за допомоги командиstripз наборуbinutils. Після цього перший файл буде займати427.664KiB, а зі статичною бібліотекою2.581MiB. У другому випадку різниця більш помітна.Виходить що коли поставити
C++іGoу рівні умови, то по розміру виграєGoчерез меншу стандартну бібліотеку. А по швидкості виконання все рівно виграєC++. Але їх обох обганяє чистийC.Також хочу замітити що на бінарний файл мови
Goкомандаstripніяк не впливає, тобто нічого не видаляє.#strip #static #libstdc++ #c++ #cpp #binutils #bin #gcc #g++ #link #sof #size #статична #бібліотека #привʼязка #лінкер #лінкування #розмір #бінарники #go
-
I'm looking for a new #gnutools job; long story short, my current employer is pushing me to retire early as part of a division-wide "reorganization", but I want to keep working. I'm a current #gcc and #binutils maintainer and have also contributed to #gdb, #glibc, #newlib, and #qemu. Lately I've been working on adding GCC front-end support for #openmp, but I've also done back-end things for multiple architectures, and I write documentation. DM me for more details and contact info.
-
GNU Spotlight with Amin Bandali: Seventeen new GNU releases in the last month including #Binutils, #Coreutils, #Emacs, #Gama, #Glibc, #Lilypond, "LinuxLibre #Poke, and more. Full details: https://u.fsf.org/40h Big thanks to @bandali0 @bandali, all the devs, and other contributors!
-
Related #ArchLinux report: https://bugs.archlinux.org/task/72433
Implementation for LDFLAGS: https://gitlab.archlinux.org/archlinux/devtools/-/merge_requests/188