LoginSignup
8
5

More than 5 years have passed since last update.

読書メモ:Go ならわかるシステムプログラミング〜 delve を Emacs で動かすまで

Last updated at Posted at 2017-11-08

環境

  • macOS High Sierra 10.13.1
  • Golang 1.9.2
  • Emacs 25.3 (Homebrew)

手順

ソースコードをチェックアウトして make を使ってコンパイル&インストール。

$ ghq get https://github.com/derekparker/delve.git
$ cd ~/src/github.com/derekparker/delve
$ make test
$ make install

Emacs で M-x package-install RET go-dlv RET して benma/go-dlv をインストール。設定は割愛。((require 'go-dlv) 的な事をするだけで良いはず)
go のファイルを開いて M-x dlv-current-func RET してデバッガが起動する事を確認。

image.png

メモ:dyld のパス解決方法がわからない

make test を実行した際に dyld 絡みのエラーが発生した。

Error compiling ../../_fixtures/issue877.go: signal: abort trap
dyld: Symbol not found: __cg_jpeg_resync_to_restart
  Referenced from: /System/Library/Frameworks/ImageIO.framework/Versions/A/ImageIO
  Expected in: /usr/local/lib/libJPEG.dylib
 in /System/Library/Frameworks/ImageIO.framework/Versions/A/ImageIO

Homebrew の jpeg と libpng パッケージによってインストールされた dylib が優先された結果、存在しないシンボルを参照してしまうという事象が発生した模様。関連パッケージを一通り削除する事で対処したが、本来はサーチパスを調整する事で解決する問題な気がしている。

※ この問題は以下で再現可能。

$ brew install jpeg
$ cd ~/src/github.com/derekparker/delve
$ make test

参考

8
5
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
8
5