Not your computer? Use a private browsing window to sign in. Learn more about using Guest mode
Not your computer? Use a private browsing window to sign in. Learn more about using Guest mode
Last-modified: 2009-01-02 (金) 23:37:02 (6m)Site admin: hayamiz convert time: 0.067 sec Powered by PukiWiki Monobook for PukiWiki
LaTeX のコンパイルめんどくさい。何がめんどくさいって、ref つかうと2回コンパイルしなきゃいけないとか、bibtex の使い方覚えられないとか。そもそもファイル保存するたびにコンパイルしなおすとか、、、 継続監視ビルドで悦楽の境地へ OMake つかったらC言語でプログラム書く手間がバカみたいに減った - 日記を書く [・w・] はやみずさん !!!! で、OMake つかったらあまりに簡単すぎてわろた。 レシピ OMake インストールしてない人は、aptitudeなりyumなり、windowsならDownload OMake からダウンロードしてインストールしないと、情報弱者となってしまうので気をつけてください。「彼氏がOMake使ってなかった。別れたい」とか言われかねません。 さて、まずは .tex ファイルがあるディレクトリにいって omake --installとすると
omake という make のパチモンみたいなものがある。だが、「おまけ」の癖にこれが素晴らしいツールなのだ。私が仕事でOCamlプログラムを書く時には必ずこれを使う。 念のために言っておくと、OCamlMakefile という、OCaml でよく使う定義を集めた Makefile 集のようなものがあるが、これは omake ではない。omake は超強力 make コマンドだと思ってもらえれば良い。 詳しいチュートリアルを書くつもりはない。それは omake の作者にまかせて、特徴を並べよう: OCamlプログラムをコンパイルする際のルールが既に登録されている。.SUFFIXES: .ml などと書く必要はない。 依存解析が自動かつ強力。依存ルールを書く手間が大幅に減る。 ディレクトリを跨いだプログラムのビルド。依存解析は OMakeroot ファイルの存在するディレクトリを頂点として
OMakeすごい。OMakeはマジですごい。 OMakeはGNU makeの代替品みたいなものなんだけど、正直なところこのツールの強力さはGNU makeと比べると失礼なくらいすごい。これのおかげで、「コード修正→ビルド→デバッグ→コード修正→・・・」のループの、ビルドにあたる作業がほぼ消え去った。 ファイルの依存関係の解析がとにかくすごい。よくあるユースケースなんかの場合、最小限の手間でほぼ完璧に依存関係を網羅して、よしなにビルドしてくれる。 とりあえず、はやみずが実際に使ってみたケースを例にとってそのすごさの一端を紹介しようと思う。 case study 論より証拠ということで、自分が OMake を試しにつかってみたケースを紹介する。C言語でスタティックライブラリを作っていて、それに加えて簡単なテストプログラムを書いている。 /include/ 以下にヘッダファイルが全部ある /sr
最近、Linuxではaptやyumなど、パッケージ管理ツールで多くのアプリケーションやライブラリが管理されるようになり、普通に利用している限りはソースからコンパイルして"make install"することがほとんどありません。 とはいっても、マイナーなソフトウェアをインストールしたりとか、まだパッケージ管理されていない最新バージョンのものを使いたい場合などは、ソースからコンパイルして"make install"をしたくなる場合も有るかと思います。 しかし、"make install"した場合の最大の欠点は、インストールしたソフトウェアの管理ができないことにあります。そのため、何が入っているのか分からなくなっているとか、アンインストールが出来ない、などのケースが起こりうるわけです。 特にアンインストールする可能性があるソフト(ほとんどのソフトがそうですが・・・)をインストールする場合は、わざ
Making Calculus With LEGO Calculus! It’s easier than you think. And since it comes up in electronics, physics, and pretty much everything else, it’s worth knowing the basics. Fortunately you can learn the Fundamental Theorem with building bricks instead of abstract symbols. @JoanHorvath @whosawhatsis
「ほとんど忘れた、Makefile」 にて: Makefileなんてもう何年も書いたことがないぞ。ウーン、だめだ、忘れている。 「忘れている」ってよりは、僕の知識じゃ古すぎて、改めて勉強しないとダメでした*1。 なにしろ、makeだけじゃ機能が貧弱なんで、cpp(Cプリプロセッサ)やm4(マクロプロセッサ)と組み合わせて使っていた頃しか知らんからね(古すぎ!)。今じゃGNU Makeを(使おうと思えば)どこでも使えるから、GNU Makeを習えばそれでいいじゃないかな。僕は、Windows上のMSYS(MinGW - Minimal SYStem)でGNU Makeを動かしました。 というわけで、GNU Makeの手習いをしたからメモしておきます。以下、名前がMakefileじゃなくても、GNU Makeへの指示を書いたファイルは何でもMakefileと呼びます。 [追記]id:paell
「Makefileの書き方、その勘どころ」にて: まだ、関数を使ってソースやターゲットを生成する方法とかパターン規則の説明をしてないので、続きを書くと思います。調べているうちに、GNU Makeの構文(の一部)はある種のプログラミング言語だという気がしてきました;そのことも書きたい気がしてます。 というわけで続きを書きます。 実は、関数呼び出しを使うときは、代入に「=」を使うより「:=」のほうが適切かつ効率的なときが多いのですが、その話は次の機会にします。 これの説明が中心になります。 内容: 前置き 変数の種類と変数定義 ソースコードの後のほうを参照すること Makeは上から下へと実行していくのだ MakeとLispは似ている 実例 ●前置き 以下、Make一般ではなくてGNU Makeの話です。GNU Makeより古いMakeにも備わっていた伝統的機能の説明はしません。 GNU Mak
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く