LoginSignup
2
1

More than 5 years have passed since last update.

CMake がキョドったら -GNinja で生成した build.ninja を読め

Posted at

今回もタイトルでほぼ完結なので以下駄文です。

CMake で思った通りに動く Makefile を吐けなくて困った経験はありませんか?
困ったので CMake が吐いた Makefile を覗いてみたら人間向きの読み物ではないことを知ってうなだれたり発狂したりしたことありませんか?

CMake -GNinja が吐く build.ninja (と rules.ninja) はモノリシックかつ人間にもどうにか追えるファイルフォーマットなので、困ったときは build.ninja を吐かせてエディタで追ったりしてみましょう。いろいろ謎が解けるでしょう。ついでにチューニングの素材ともなります。

なお build.ninja の例はあえてここでは挙げません。挙げてみたかったんですが Clang/LLVM の build.ninja は 20MB くらいあるし…

せっかくだからこれを機に Ninja を使いましょう。インストールめんどくさければ ~/bin にビルドツリーからの symlink でもいいんです。

厄介なバグ(CMake 関係ではない)の原因をつきとめた気晴らしに短文を書いてみました☆

2
1
0

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
2
1