2005-10-01から1ヶ月間の記事一覧

デバッグ情報付きで debian のパッケージを作る.

行儀が良いパッケージなら環境変数 DEB_BUILD_OPTIONS で nostrip を指定して dpkg-buildpackge すれば良いみたい. $ export DEB_BUILD_OPTIONS="nostrip" $ dpkg-buildpackge -us -uc -rfakeroot

トランザクション

「トランザクションとは,不可分な一連の操作をまとめた単位」トランザクションって何?と聞かれたら,ここまでは,さくっと答えられないとエンジニアとして問題あり.で,さらに「トランザクションは, ACID性と呼ばれる四つの性質を満たす必要がある.」な…

スピンロックから始めるLinuxカーネル入門

http://hira.main.jp/wiki/pukiwiki.php?%A4%E8%A4%A6%A4%B3%A4%BD

C でバックトレース表示

普通のやつらの下を行け: C でバックトレース表示 - bkブログより glibc に含まれる backtrace() と backtrace_symbols_fd() を使うと実行中の C プログラムのバックトレースを表示できます とのこと.デバッグ用マクロとかで使うと便利そう.ちなみに,シグ…

samba 3.0 系で日本語ファイル名を使う.

smbの3.0系で,クライアント側に表示する文字列はSJIS(cp932),サーバ側のファイルシステム上のファイル名はEUC(eucjp-ms)にする場合の設定 dos charset = cp932 display charset = cp932 unix charset = eucjp-ms

X windowで"windowsキー"を使う方法

X windowsでwindowsキーを使う方法.現在xorg 6.8.2を使っているが,デフォルトではwindowsキーが使えない.たとえば rdesktop でwindowsキーを押下すると, WARNING: No translation for (keysym 0x0, NoSymbol)という警告が出まくる.ためしに,xevでwindo…

debian で /tmp 以下を定期的に掃除する.

redhat系のディストリビューションでは tmpwatch というサービスが定期的に/tmp以下を掃除してくれる.debianでは tmpwatch というパッケージは無く,代わりに tmpreaper というパッケージを使う.インストールは以下の2step $ sudo apt-get install tmpreap…

debian で /tmp 以下を起動時に削除しない

debianではシステム起動時に /etc/init.d/bootclean.sh が実行され,/tmp 以下のファイルを削除してくれる.redhat系のディストリビューションになれている人に取っては全くもって大きなお世話的な仕様だ.googleで調べた結果,どうもデビアン的には /tmp は…

icc の最適化を部分的にoff

iccの最適化のバグを見つけてしまった.boost/random.hpp を使った乱数生成処理を"-O2"とか"-O3"を付けてコンパイルすると,乱数の値が常にゼロになってしまう."-O0"ならば正しく乱数が生成できるので,最適化のバグであることは間違いない.iccのバージョ…

Test-And-Set操作について

test and set 操作について復習をしたのでメモ.test and set (TAS)操作では,次のような処理をアトミックに行う. int test_and_set(int *mem){ old = *mem; if (0 == *mem){ *mem = 1; }else{ /* do nothing */ } return old; }例えば 2.6系のlinux (i386)…

コンパイラを切り替える方法.

コンパイラを切り替える方法には色々あるが,以下のような設定ファイルを作って source で読み込むのが一番便利そう. source /opt/intel/idb/9.0/bin/idbvars.sh source /opt/intel/cc/9.0/bin/iccvars.sh source /opt/intel/fc/9.0/bin/ifortvars.sh expor…

debian で intel compiler を使う(その2)

intelコンパイラのiccやifcをデビアンで使う方法.debian で intel compiler (icc) - ぴょぴょぴょ? - Linuxとかプログラミングの覚え書き -の続編.iccやifcは頻繁にバージョンが上がるので,パッケージを変換するスクリプトと,インストール後設定ファイ…

grub-install でエラーがでる。

パーティション構成を変更する際 grub-installを行うと"The file /boot/grub/stage1 not read correctly."とエラーがでる場合の対処方法。このエラーは /etc/mtab と パーティションの内容に不一致がある場合に生じる。面倒だったら /etc/mstab を一度消して…

debian で起動時にカーネルモジュールを自動でロードする.

debianは,/etc/modulesに記述されたモジュールを起動時に読み込むみたい.

デビアンのパッケージを展開する

$ dpkg -x hoge.deb ディレクトリ名

debian のパッケージを作る方法(その2)

参考文献Debian New Maintainers' Guide 必要なファイル configure に対応しているソースからdebianのパッケージを作る際に、最低限必要なファイルは以下の4つ。 debian/control パッケージの管理情報 debian/changelog debian/copyright debian/rules ビル…

直線・円の描画アルゴリズム

http://www2.starcat.ne.jp/~fussy/algo/index.htm Bresenhamアルゴリズムとか、その拡張版など。古典的アルゴリズムがよくまとまっている。

デバッグ用Cマクロ

printf()でデバッグメッセージを出力するマクロ。以前から同じようなマクロはよく書いてきたが、最近やっと仕様が固まったのでコピペできるように日記に書いておく。特徴としては マクロが埋め込まれたソースファイル名とその行数を出力。 マルチスレッドな…

windowsのリモートデスクトップにlinuxから接続

windows側の設定 リモートデスクトップの接続を受け付けるようにしておく。 linux側の設定 クライアントソフトをインストールしておく。 grdesktop とか rdesktopがあるみたい。とりあえず rdesktop なら $ rdesktop -g "1024x768" -k ja windowsホスト名