| 一个测试程序(测试段溢出后回溯调试功能),在Ubuntu上运行出错的时候回溯正常,但在开发板上运行的时候出错backtrace函数返回值为0。 请问这是什么情况呢? 
 这是测试代码
 #include <execinfo.h>
 #include <signal.h>
 #include <stdio.h>
 #include <stdlib.h>
 void
 print_trace (int signo)
 {
 void *array[10];
 size_t size;
 char **strings;
 size_t i;
 char a[10];
 size = backtrace (array, 10);
 strings = backtrace_symbols (array, size);
 
 printf ("Obtained %zd stack frames.\n", size);
 
 for (i = 0; i < size; i++)
 
 printf ("%s\n",  strings[i]);
 
 free (strings);
 }
 
 /* A dummy function to make the backtrace more interesting.
 */
 void dummy_function (void)
 {
 *((char *)0)=0x999;
 }
 
 int
 main (void)
 {
 signal(SIGSEGV,print_trace);
 dummy_function ();
 return 0;
 }
 gcc -rdynamic   -g test.c -o  test 编译指令
 arm-linux-gcc -rdynamic   -g test.c -o  test
 
 |