GNU Binutils 2.38 ์ถœ์‹œ

GNU ๋ง์ปค, GNU ์–ด์…ˆ๋ธ”๋Ÿฌ, nm, objdump, ๋ฌธ์ž์—ด, ์ŠคํŠธ๋ฆฝ๊ณผ ๊ฐ™์€ ํ”„๋กœ๊ทธ๋žจ์„ ํฌํ•จํ•˜๋Š” GNU Binutils 2.38 ์‹œ์Šคํ…œ ์œ ํ‹ธ๋ฆฌํ‹ฐ ์„ธํŠธ๊ฐ€ ์ถœ์‹œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

์ƒˆ ๋ฒ„์ „์—์„œ:

  • Loongson ํ”„๋กœ์„ธ์„œ์— ์‚ฌ์šฉ๋˜๋Š” LoongArch ์•„ํ‚คํ…์ฒ˜์— ๋Œ€ํ•œ ์ง€์›์ด ์–ด์…ˆ๋ธ”๋Ÿฌ ๋ฐ ๋ง์ปค์— ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • ๋ฉ€ํ‹ฐ๋ฐ”์ดํŠธ ๊ธฐํ˜ธ ์ฒ˜๋ฆฌ ๋ฐฉ๋ฒ•์„ ์„ ํƒํ•˜๊ธฐ ์œ„ํ•ด "โ€”multibyte-handling=[allow|warn|warn-sym-only]" ์˜ต์…˜์ด ์–ด์…ˆ๋ธ”๋Ÿฌ์— ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค. warning ๊ฐ’์„ ์ง€์ •ํ•˜๋ฉด ์†Œ์Šค ํ…์ŠคํŠธ์— ๋ฉ€ํ‹ฐ๋ฐ”์ดํŠธ ๋ฌธ์ž๊ฐ€ ์žˆ์œผ๋ฉด ๊ฒฝ๊ณ ๊ฐ€ ํ‘œ์‹œ๋˜๊ณ ,warn-sym-only๋ฅผ ์ง€์ •ํ•˜๋ฉด ์ธ์ˆ˜ ์ด๋ฆ„์— ๋ฉ€ํ‹ฐ๋ฐ”์ดํŠธ ๋ฌธ์ž๊ฐ€ ์‚ฌ์šฉ๋˜๋ฉด ๊ฒฝ๊ณ ๊ฐ€ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.
  • ์–ด์…ˆ๋ธ”๋Ÿฌ๋Š” AArch64 ๋ฐ ARM ์•„ํ‚คํ…์ฒ˜์— ๋Œ€ํ•œ ์ง€์› ๊ฐœ์„ , ์‹œ์Šคํ…œ ๋ ˆ์ง€์Šคํ„ฐ์— ๋Œ€ํ•œ ์ง€์› ํ™•์žฅ, SME(Scalable Matrix Extension)์— ๋Œ€ํ•œ ์ง€์› ์ถ”๊ฐ€, Cortex-R52+, Cortex-A510, Cortex-A710, Cortex-X2, Cortex-A710์— ๋Œ€ํ•œ ์ง€์› ์ถ”๊ฐ€ ํ”„๋กœ์„ธ์„œ ๋ฐ ์•„ํ‚คํ…์ฒ˜ ํ™•์žฅ 'v8.7-a', 'v8.8-a', 'v9-a', 'v9.1-a', 'armv9.2-a' ๋ฐ 'armv9.3- ใ…'.
  • x86 ์•„ํ‚คํ…์ฒ˜์˜ ๊ฒฝ์šฐ Intel AVX512_FP16 ์ง€์นจ์— ๋Œ€ํ•œ ์ง€์›์ด ์–ด์…ˆ๋ธ”๋Ÿฌ์— ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • DT_RELR ์„น์…˜์—์„œ ์ƒ๋Œ€ ์žฌ๋ฐฐ์น˜ ํŒจํ‚น์„ ์ œ์–ดํ•˜๊ธฐ ์œ„ํ•ด ๋ง์ปค์— ์˜ต์…˜ ์ถ”๊ฐ€: "-z pack-relative-relocs/-z nopack-relative-relocs" "-z indirect-extern-access/-z noindirect-extern-access"๋Š” ์ •์‹ ํ•จ์ˆ˜ ํฌ์ธํ„ฐ์˜ ์‚ฌ์šฉ๊ณผ ์ฃผ์†Œ ์žฌ๋ฐฐ์น˜ ์ •๋ณด ๋ณต์‚ฌ๋ฅผ ์ œ์–ดํ•ฉ๋‹ˆ๋‹ค. "--max-cache-size=SIZE"๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ตœ๋Œ€ ์บ์‹œ ํฌ๊ธฐ๋ฅผ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค.
  • ELF ํŒŒ์ผ์˜ ABIVERSION ํ•„๋“œ๋ฅผ ์—…๋ฐ์ดํŠธํ•˜๊ธฐ ์œ„ํ•ด elfedit ์œ ํ‹ธ๋ฆฌํ‹ฐ์— "--output-abiversion" ์˜ต์…˜์„ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค.
  • ๊ธฐํ˜ธ ์ด๋ฆ„์ด๋‚˜ ๋ฌธ์ž์—ด์„ ์ถœ๋ ฅํ•  ๋•Œ ์œ ๋‹ˆ์ฝ”๋“œ ๋ฌธ์ž ์ฒ˜๋ฆฌ๋ฅผ ์ œ์–ดํ•˜๊ธฐ ์œ„ํ•ด "--unicode" ์˜ต์…˜์ด readelf, strings, nm ๋ฐ objdump ์œ ํ‹ธ๋ฆฌํ‹ฐ์— ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค. "-unicode=locale"์„ ์ง€์ •ํ•˜๋ฉด ์œ ๋‹ˆ์ฝ”๋“œ ๋ฌธ์ž์—ด์ด ํ˜„์žฌ ๋กœ์ผ€์ผ์— ๋”ฐ๋ผ ์ฒ˜๋ฆฌ๋˜๊ณ , "-unicode=hex"๋Š” XNUMX์ง„์ˆ˜ ์ฝ”๋“œ๋กœ ํ‘œ์‹œ๋˜๊ณ , "-unicode=escape"๋Š” ์—์Šค์ปฌ๋ ˆ์ด์…˜ ์‹œํ€€์Šค๋กœ ํ‘œ์‹œ๋˜๊ณ , "-unicode=highlight"๋Š” ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค. ยป - ๋นจ๊ฐ„์ƒ‰์œผ๋กœ ๊ฐ•์กฐ ํ‘œ์‹œ๋œ ์—์Šค์ปฌ๋ ˆ์ด์…˜ ์‹œํ€€์Šค๋กœ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.
  • readelf์—์„œ "-r" ์˜ต์…˜์€ ์ด์ œ ์žฌ๋ฐฐ์น˜ ๋ฐ์ดํ„ฐ๋ฅผ ๋คํ”„ํ•ฉ๋‹ˆ๋‹ค.
  • efi-app-aarch64, efi-rtdrv-aarch64 ๋ฐ efi-bsdrv-aarch64 ํ”Œ๋žซํผ์— ๋Œ€ํ•œ ์ง€์›์ด objcopy์— ์ถ”๊ฐ€๋˜์–ด UEFI์šฉ ๊ตฌ์„ฑ ์š”์†Œ๋ฅผ ๊ฐœ๋ฐœํ•  ๋•Œ ์ด ์œ ํ‹ธ๋ฆฌํ‹ฐ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ์‹ฌ๋ณผ๊ณผ ๋งํฌ ํ…Œ์ด๋ธ”๋งŒ ํฌํ•จํ•˜๋Š” ์”ฌ ์•„์นด์ด๋ธŒ๋ฅผ ์ƒ์„ฑํ•˜๊ธฐ ์œ„ํ•ด "--thin" ์˜ต์…˜์ด ar ์œ ํ‹ธ๋ฆฌํ‹ฐ์— ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

์ถœ์ฒ˜ : opennet.ru

์ฝ”๋ฉ˜ํŠธ๋ฅผ ์ถ”๊ฐ€