llvm-sysクレートを使うときにリンクに失敗した

事の始まり LLVMには、フロントエンド開発の事始めとしてKaleidoscopeという独自言語を開発するチュートリアルがある。 このチュートリアルはC++で実装していく流れなのだが、グローバル変数だらけでLLVMどの関数/変数が何に依存していて何の機能に重要なの…

fortranのmodファイルのタイムスタンプについて

TL;DR gfortranでモジュールファイルをコンパイルする時、インターフェースが変わらなければmodファイルのタイムスタンプは更新されない。 *.modファイルは*.oファイルと*.f90ファイルに依存する形でMakefileなどに書き込もう。 *.modファイルを更新すべきと…

BashスクリプトのUsageを書くのがめんどくさい。

LinuxやUNIXを使っていると、自前のBashスクリプトを書くことが多いと思いますが、そのスクリプトが何の引数を受け取るのか覚えていないことがよくあります。 こんなときに、わざわざスクリプトの中身を見て判断するのはめんどくさいので、使い方を間違って…

パケット解析、入門してみました。〜その2〜

前回の続き。 libpcap(続き) pcap_close ハンドルを閉じる関数です。 宣言 void pcap_close(pcap_t *handle); 名前の通り、ハンドルhandleを閉じます。 (前回の記事に書くべきだったかも知れません) サンプルコード #include <stdio.h> #include <pcap.h> int main(int ar</pcap.h></stdio.h>…

パケット解析、入門してみました。〜その1〜

今年度に入って艦これ始めました。楽しいです。 艦これをやってくうちに、2017夏イベントに突入したのもあってログを取りたいと思ったので自前でロガーを作ろうと思い立ったわけです。 知り合いにソフトを教えてもらったりもしたのですが、そのソフトはWindo…