#libstdc — Public Fediverse posts
Live and recent posts from across the Fediverse tagged #libstdc, aggregated by home.social.
-
Ця оптимізація відбувається завдяки, тому що
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
-
After the #glibc libc-alpha and #gcc gcc-patches mailinglist tests to avoid From rewriting worked out nicely we enabled the same settings to some other mailinglists.
The other gcc patches lists for #libstdc++, #libgccjit, #fortran and #gcc-rust. And those project that use #patchwork, #newlib, #elfutils, #libabigail and #gdb.
This hopefully makes mailing patches and using git am on them a bit nicer.
Please contact us if you have any issues with the mailinglists.
https://sourceware.org/mission.html#organization