bashism
OProfile を動かしてみようと思ってインストールしたら、opcontrol が動かない。なんでだ、と思って原因を探ると、
- opcontrol は shell script で shebang が #!/bin/sh
- 良く見ると $((NR_CHOSEN - 1)) という記述がありこれが原因っぽい
- そして私の Ubuntu では /bin/sh は bash でなく dash*1
これが、うわさの bashism *2か、と思ったけど、POSIX を見てみたら、
If the shell variable x contains a value that forms a valid integer constant, then the arithmetic expansions "$((x))" and "$(($x))" shall return the same value.
うーむ。まぁ、でも、そこに期待するのはだめだよな。といっても、OProfile は Linux 用のプロファイラで Linux はかなりの高確率で /bin/sh が bash なんだけど。