unless’s blog

日々のちょっとした技術的なことの羅列

binary

なぜGolangが一部のBinary Toolを自前で実装しているのか

これはなに? これはKyash Advent Calendar 2022 21日目の記事です KyashでBackend Engineerをしている @uncle__ko です お金の入出金を司るチームや決済領域を司るチームなどを経験したあと、現在はTechチームの生産性向上に向けた取り組みを行うチームのリ…

Goのhello worldを小さくする

これはなに? ふとGolangのbinaryを小さく出来ないかなと思い立ったのでhello worldをスリムにしていこうと思う hello world Golangでのhello worldはこちら package main import "fmt" func main() { fmt.Println("hello, world") } 普通にbuild これを普通…

オブジェクトファイルと戯れてみる Pert.2

echoコマンドのオブジェクトファイルと戯れてみる第二弾 第一弾はこちら unless.hatenablog.jp 共有ライブラリの依存関係 objdump で依存関係を見てみる ja.wikipedia.org 共有ライブラリが何かという情報はELFの[Dynamic Section]のNEEDEDに記載されている …

オブジェクトファイルと戯れてみる Pert.1

echoコマンドのオブジェクトファイルと戯れてみる ELF ELFとは実行可能バイナリやオブジェクトファイル等のフォーマットを規定したのもだそう ja.wikipedia.org echo コマンドのELFヘッダを見てみる ELFヘッダとは ファイルの先頭に存在し、ELF識別子、アー…