Haskellのコールグラフ可視化ツールSourceGraphをインストールした話
以前の記事でも書いたように苦労してstack upgradeした(それでおかしくなって治すのに週末をつかった)。
それはSourceGraphをインストールするためだった。呼び出し関係がぐちゃぐちゃだから可視化したい。ってか、ぐちゃぐちゃかどうかも自分でしらないから知りたいってことです。誰でもこうなるのか?という疑問はある。
離見の見。
第三者の目で見つめ直すには、他の形式でみることだ。
きれいに書けば呼び出し関係は頭の中で整然とするのだろうか?
ぼくはできない。
忘れるから。
で、ここ、dockerあるじゃん、カラフルだな、よく出来てるー
?
なんか出来すぎてる、調べたら違うよ!これじゃない
正しくは以下です
で、ここです。陽気な写真の作者ww
これをどうインストールすればよいのか?
もしかしてcabal installすればいいのかな。これは知らないや。
stackでビルドすることにしたのだった。
まず適当にフォルダを作ってstack newしたフォルダの下に配置するとどうもビルド対象になっているようだ。
だけどGraphalyzeがないとか。あとhaskell-src-extのバージョンが解決できない。これは依存バージョンを勝手に修正した。githubだとプルリク出てる?すまんがgit知らないので適当に書きます。
このへんみながらGraphalyzeを追加するわけ。package.yamlにも記載があつた気がする。githubだけなくてもう一箇所書くのよ。辛いね。
したがコンパイルできないので、
通ったがコンパイルエラー。うへソース修正かよ、と思って見るがよくわからない。
ぐぐったらこれだわ Support haskell-src-exts == 1.17.* by utdemir · Pull Request #2 · ivan-m/SourceGraph · GitHub 著者さぼっている。でもフォロワー直しているじゃん。下記ソースあたりをコピペしてビルド通ったわ。やったー。
githubいいな。
ところでhappyないよ、エラーではまったり、ハマるところ多すぎで素人無理だわ。おいら?素人だよ
happyのビルドのためのhappyがない?
これ。
yesodeの著者のひと活躍しているけど、解決が不明。。
ちなみにhappyはこれです。はっぺー。 www.haskell.org
結局happyはcabal installしたんだったと思う。
cabalがうまく動かなくてbrew installしたんだけどうまく動かない。
古いcabal installがlocal/binみたいなところにあって、それを削除のあとにbrew installして、ちゃんと入ったcabalでhappyをインストールした。。
brewじゃ入らないよ、cabal製は。つかれたのでした。
やっとインストールできたSourceGraph、HTMLでソース構造が出力されて見える。
みえる、、みえるぞ!!
はっぺーーーー