为什么我的backtrace()只找到动态库的路径

时间:2019-04-07 02:17:51

标签: linux dll backtrace

void testfunc3(){
    char* funcname[20];
    int n = 0 ;
    n = backtrace((void**)funcname,20);
    char** p_need_free = (char**)backtrace_symbols((void**)funcname,n);     
    int i = 0;
    for(i=0;i<n;i++){
        printf("funcname is : %s\n",p_need_free[i]);
    }
    free(p_need_free);
}
void testfunc2(){
    testfunc3();
}
void testfunc1(){
    testfunc2();
}
/** in another file **/
int main(){
    testfunc1();
    return 0;
}
  

此项目有2个文件,main()需要1个文件,其他函数需要   另一个,后一个文件被编译为动态库。

0 个答案:

没有答案