それっぽい技術メモ

UNIXからpythonまで、技術系メモ。知識は人類の共有財産です。

Bashのエラーコードの話 RC 127はパスが通ってないよ

Cモジュールを修正、リコンパイルして実行したところ、戻り値が127だって。
ソース中ではRC=127で記述していなかったので、きっとbashが返してるはず。
というわけで調べてみると、どうやらLD_LIBRARY_PATHでlibのパスが通ってなかったことが判明。

代表的な戻り値はこんな感じ。
 ・127 :パスが通ってないよ。
 ・139 :segmentation fault(メモリーエラー)

bashが返すエラーコードは128を超えると、128 + シグナル を返します。
シグナルは、>|| kill -l ||< で確認できます。こんな感じ。

 1) SIGHUP       2) SIGINT       3) SIGQUIT      4) SIGILL       5) SIGTRAP
 6) SIGABRT      7) SIGBUS       8) SIGFPE       9) SIGKILL     10) SIGUSR1
11) SIGSEGV     12) SIGUSR2     13) SIGPIPE     14) SIGALRM     15) SIGTERM
16) SIGSTKFLT   17) SIGCHLD     18) SIGCONT     19) SIGSTOP     20) SIGTSTP
21) SIGTTIN     22) SIGTTOU     23) SIGURG      24) SIGXCPU     25) SIGXFSZ
26) SIGVTALRM   27) SIGPROF     28) SIGWINCH    29) SIGIO       30) SIGPWR
31) SIGSYS      34) SIGRTMIN    35) SIGRTMIN+1  36) SIGRTMIN+2  37) SIGRTMIN+3
38) SIGRTMIN+4  39) SIGRTMIN+5  40) SIGRTMIN+6  41) SIGRTMIN+7  42) SIGRTMIN+8
43) SIGRTMIN+9  44) SIGRTMIN+10 45) SIGRTMIN+11 46) SIGRTMIN+12 47) SIGRTMIN+13
48) SIGRTMIN+14 49) SIGRTMIN+15 50) SIGRTMAX-14 51) SIGRTMAX-13 52) SIGRTMAX-12
53) SIGRTMAX-11 54) SIGRTMAX-10 55) SIGRTMAX-9  56) SIGRTMAX-8  57) SIGRTMAX-7
58) SIGRTMAX-6  59) SIGRTMAX-5  60) SIGRTMAX-4  61) SIGRTMAX-3  62) SIGRTMAX-2