- Ruby 初心者スレッド Part 59 [無断転載禁止]©2ch.net
321 :デフォルトの名無しさん[sage]:2016/12/06(火) 01:28:22.79 ID:HR1yYwh6 - Ruby の C 言語による拡張ライブラリを作成して実行しているのですが,
再現性の無いバグに悩まされています.同じプログラムを5回動かすと4回ぐらいコケて, 下に示すようなエラーが出力されます. 同じライブラリを C 言語プログラムから呼び出すとエラーが出力されません. そのため,gdb 等でのデバッグが出来ません. -- Crash Report log information -------------------------------------------- ... -- Control frame information ----------------------------------------------- ... -- C level backtrace information ------------------------------------------- -- Other runtime information ----------------------------------------------- ... C 言語プログラムから呼び出すとエラーが出ないということは, rb_define_class 等で定義しているラッパ部分の記述に問題が有るような 気がしていますが,printf によるデバッグで場所を特定出来ないでおります. また,問題は C level backtrace information のところに出力がされないことだと 思っているのですが,ココに何か出力させるには,gcc -g のオプション以外に 何か必要なのでしょうか?
|
- Ruby 初心者スレッド Part 59 [無断転載禁止]©2ch.net
322 :321[sage]:2016/12/06(火) 01:29:36.00 ID:HR1yYwh6 - ちょっと古いけすけど,ruby 2.0.0, OSX,xcode の gcc を使っています.
|
- Ruby 初心者スレッド Part 59 [無断転載禁止]©2ch.net
323 :321[sage]:2016/12/06(火) 01:31:37.05 ID:HR1yYwh6 - extconf.rb から出力された Makefile をそのまま利用しています.
|