ΠΠ·Π΄Π°Π΄Π΅Π½ Π΅ ΡΠ΅Π»ΠΈΠ· Π½Π° Π½Π°Π±ΠΎΡ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΈ ΡΡΠΈΠ»ΠΈΡΠΈ GNU Binutils 2.39, ΠΊΠΎΠΉΡΠΎ Π²ΠΊΠ»ΡΡΠ²Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈ ΠΊΠ°ΡΠΎ GNU linker, GNU assembler, nm, objdump, strings, strip.
Π Π½ΠΎΠ²Π°ΡΠ° Π²Π΅ΡΡΠΈΡ:
- Π ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΎΡΠ° Π½Π° ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ ΡΠΎΡΠΌΠ°ΡΠ° ELF (ELF linker) Π΅ Π²Π½Π΅Π΄ΡΠ΅Π½ΠΎ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΏΡΠΈ Π°ΠΊΡΠΈΠ²ΠΈΡΠ°Π½Π΅ Π½Π° Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠ° Π·Π° ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ Π½Π° ΠΊΠΎΠ΄ Π² ΡΡΠ΅ΠΊΠ°, Π° ΡΡΡΠΎ ΠΈ ΠΏΡΠΈ Π½Π°Π»ΠΈΡΠΈΠ΅ Π½Π° ΡΠ΅Π³ΠΌΠ΅Π½ΡΠΈ ΠΎΡ ΠΏΠ°ΠΌΠ΅ΡΡΠ° Π² Π±ΠΈΠ½Π°ΡΠ½ΠΈΡ ΡΠ°ΠΉΠ», Π½Π° ΠΊΠΎΠΈΡΠΎ ΡΠ° Π·Π°Π΄Π°Π΄Π΅Π½ΠΈ ΠΏΡΠ°Π²Π° Π·Π° ΡΠ΅ΡΠ΅Π½Π΅, Π·Π°ΠΏΠΈΡ ΠΈ ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅.
- Π ELF linker Π±Π΅ΡΠ΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΎΠΏΡΠΈΡ Β«βpackage-metadatΒ» Π·Π° Π²Π³ΡΠ°ΠΆΠ΄Π°Π½Π΅ Π½Π° ΡΠ°ΠΉΠ» Ρ ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΠΈ Π² ΡΠΎΡΠΌΠ°Ρ JSON, ΡΡΠΎΡΠ²Π΅ΡΡΡΠ²Π°Ρ Π½Π° ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡΡΠ° Package Metadata.
- Π ΡΠΊΡΠΈΠΏΡΠΎΠ²Π΅ΡΠ΅ Π½Π° Π»ΠΈΠ½ΠΊΠ΅ΡΠ° Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ΡΠΎ Π½Π° ΡΠ΅ΠΊΡΠΈΡ Ρ Π΅ΡΠΈΠΊΠ΅Ρ TYPE=<type> Π·Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π΅ Π½Π° ΡΠΈΠΏΠ° Π½Π° ΡΠ΅ΠΊΡΠΈΡΡΠ°.
- Π ΡΡΠΈΠ»ΠΈΡΠ°ΡΠ° objdump Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ½Π° ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΊΠ° Π² Π΄ΠΈΠ·Π°ΡΠ΅ΠΌΠ±Π»ΠΈΡΠ°Π½Π΅ΡΠΎ Π·Π° Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠΈ AVR, RiscV, s390, x86 ΠΈ x86_64.
- Π ΡΡΠΈΠ»ΠΈΡΠ°ΡΠ° nm Π±Π΅ΡΠ΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΎΠΏΡΠΈΡ Β«βno-weakΒ» (Β«-WΒ») Π·Π° ΠΈΠ³Π½ΠΎΡΠΈΡΠ°Π½Π΅ Π½Π° weak-ΡΠΈΠΌΠ²ΠΎΠ»ΠΈΡΠ΅.
- Π ΡΡΠΈΠ»ΠΈΡΠΈΡΠ΅ readelf ΠΈ objdump Π±Π΅ΡΠ΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΎΠΏΡΠΈΡ Β«-wEΒ» Π·Π° ΠΈΠ·ΠΊΠ»ΡΡΠ²Π°Π½Π΅ Π½Π° ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΠ΅ΡΠΎ ΠΊΡΠΌ ΡΡΡΠ²ΡΡΠΈΡΠ΅ debuginfod ΠΏΡΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° Π²ΡΡΠ·ΠΊΠΈ.
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: opennet.ru
