とにかくアウトプットを始めてみる

またまた更新がおこたりがちなブログです。
自分は引っ込み思案な性格なせいか、なかなかアウトプットができないというのが欠点です。ブログの過去の記事も結構な駄文なわけですが、それなりに考えて書いているんですよ、それなりに。それなりに考えているつもりなので、アウトプットが怠りがちなんですよね・・・

というわけで、今日からはその日学んだこととかをダーッと思い気のまま書いてしまおうと思います。個人的なまとめなので、他の人には全く有益な情報ではないということをあらかじめご承知ください。あまりのひどさにツッコミがしたくなったら、どうかしてやってください。そのほうが軟弱者の自分にきっといいはずです(ちなみに多分手前はMです)。

apt-getとaptitudeの違い

今日は卒研で扱っているns-3を仮想環境のUbuntu10.04にインストールしていました。必要なパッケージをインストールにするにあたって、apt-getとaptitudeで何が違うんだという疑問が。大雑把に言えば「推奨パッケージ」の扱いが違う。apt-getは推奨パッケージを表示するだけだが、aptitudeは推奨パッケージもインストールしようとする。アンインストールのときは、apt-getはそのパッケージだけをaptitudeは不要になったパッケージも削除してくれる。というわけで調べてみたかんじでは、aptitudeのほうが便利そうなので、そちらを使うことに。

hgはMercurial

・・・すいません。流石にこれだけではマズいですよね。ns-3の開発版を導入するときはMercurialとかいうバージョン管理システムを使うんですよ。今回は導入部分しか調べてないんですが、今後詳しくどんなものなのか調べる予定です。

gdbはじめました

長い間やろうやろうと思いながらも、逃げてきたgdbを使い始めました。printfデバッグ高専生活をやりすごしてきた自分ですが、今更ながらそれを少し後悔しています。
ちょっとしたまとめ。

  • コンパイルとき、-gをつける。最適化オプションとかはつけちゃだめ!
  • break(b) 関数名、行番号 「ブレークポイントをつける」
  • run(r) 実際に実行するときの引数 「実行」
  • print 変数名 「変数の中身を表示」
  • display 変数名 「変数の中身をnext,stepのたびに表示」
  • next 「一行分だけ実行。ただし、関数内には入らない」
  • step 「一行分だけ実行。関数内に入る」

今日はそんなところでした