質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
86.12%
Erlang

Erlangとは、多目的でありガーベッジコレクションを行うプログラミング言語および実行環境です。Erlangは並行処理・分散化された環境・フォルトトレランスを実装しています。

GDB

GDBはGNUソフトウェアシステムのための標準的なデバッガーです。

デバッグ

デバッグはプログラムのバグや欠陥を検知し、開発中のバグを取り除く為のプロセスを指します。

Elixir

Elixirは、並列処理や関数型に特化した、Erlang VM (BEAM) 上で動作する汎用プログラミング言語です。分散システム、耐障害性、ソフトリアルタイムシステムなどの機能を持ちます。

受付中

gdb 共有ライブラリの中身を詳しく見たい

marny
marny

総合スコア19

Erlang

Erlangとは、多目的でありガーベッジコレクションを行うプログラミング言語および実行環境です。Erlangは並行処理・分散化された環境・フォルトトレランスを実装しています。

GDB

GDBはGNUソフトウェアシステムのための標準的なデバッガーです。

デバッグ

デバッグはプログラムのバグや欠陥を検知し、開発中のバグを取り除く為のプロセスを指します。

Elixir

Elixirは、並列処理や関数型に特化した、Erlang VM (BEAM) 上で動作する汎用プログラミング言語です。分散システム、耐障害性、ソフトリアルタイムシステムなどの機能を持ちます。

0回答

0リアクション

0クリップ

454閲覧

投稿2019/12/29 07:02

erlangのNIFという機能を使ってelixirコードからC言語の関数を呼び出しているのですが,
gdbでバックトレースした際に,共有ライブラリ内でsegmentation faultしていると考えられるときに共有ライブラリの中身を詳しく見る方法はあるのでしょうか.

terminal

$ gdb /usr/lib/erlang/erts-10.5.6/bin/beam.smp -core core -d /home/me/src Core was generated by `/usr/lib/erlang/erts-10.5.6/bin/beam.smp -- -root /usr/lib/erlang -progname erl'. Program terminated with signal SIGSEGV, Segmentation fault. #0 0x00007f8a06466bbc in hoge () from sharedlib.so [Current thread is 1 (Thread 0x7f8a0c9f3700 (LWP 7666))] (gdb) bt #0 0x00007f8a06466bbc in hoge () from sharedlib.so #1 0x00007f8a079ba3db in nif_hoge (env=0x7f8a0c9f2d80, argc=1, argv=0x7f8a0f708340) at src/node_nif.c:177 #2 0x00005611dc6b30ea in process_main () #3 0x00005611dc6a35f9 in ?? () #4 0x00005611dc923a4d in ?? () #5 0x00007f8a5042d6db in start_thread (arg=0x7f8a0c9f3700) at pthread_create.c:463 #6 0x00007f8a4ff4e88f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

sharedlib.soは自身で作ったものではなくダウンロードしてきてその中にあったものです.
デバッグの方法などはこのページを参考にしました.

よろしくお願いいたします.

以下のような質問にはリアクションをつけましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

リアクションが多い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

気になる質問をクリップする

クリップした質問は、後からいつでもマイページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

下記のような質問は推奨されていません。

  • 間違っている
  • 質問になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

適切な質問に修正を依頼しましょう。

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
86.12%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問

同じタグがついた質問を見る

Erlang

Erlangとは、多目的でありガーベッジコレクションを行うプログラミング言語および実行環境です。Erlangは並行処理・分散化された環境・フォルトトレランスを実装しています。

GDB

GDBはGNUソフトウェアシステムのための標準的なデバッガーです。

デバッグ

デバッグはプログラムのバグや欠陥を検知し、開発中のバグを取り除く為のプロセスを指します。

Elixir

Elixirは、並列処理や関数型に特化した、Erlang VM (BEAM) 上で動作する汎用プログラミング言語です。分散システム、耐障害性、ソフトリアルタイムシステムなどの機能を持ちます。