1

I wrote a C++ program. It invokes some functions provided by libhdfs(HDFS API for C++, implemented with JNI) and it runs OK when normally executed. When I use gdb to launch the program and input run command. The program fails to run and I got the following error message in gdb context:

[Thread debugging using libthread_db enabled]
[New Thread 0x40100940 (LWP 18482)]
[New Thread 0x40201940 (LWP 18483)]
...
[New Thread 0x41514940 (LWP 18502)]

Program received signal SIGSEGV, Segmentation fault.
0x00002aaaac26c862 in ?? ()

I use command shell echo $CLASSPATH in gdb context. It shows the correct HDFS related environment.

I searched with Google and StackOverflow. But I did not get any idea.

Any tip?

1 Answers1

2

Why does java app crash in gdb but runs normally in real life? provided a solution:

handle SIGSEGV nostop noprint pass

While, it is not so elegant.

Community
  • 1
  • 1