首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >分析由和ARM设备创建的文件时,gperftools cpuProfiler看不到simbols

分析由和ARM设备创建的文件时,gperftools cpuProfiler看不到simbols
EN

Stack Overflow用户
提问于 2014-09-24 21:05:44
回答 1查看 961关注 0票数 2

我想分析一个在ARM设备上运行的C++应用程序。我运行了我的应用程序,并使用ProfilerStart("googleProfBL.prof")对其进行了分析,因此生成了该文件。当我从本地计算机上的ARM设备打开该文件时,会得到以下信息:

./pprof --text --add_lib=libraryIwanttoDebug.so BinaryThatLoadsThatLibrary googleProfBL.prof Using local file /home/genius/PresControler/src-build-target/deploy/NavStartup. Using local file ../traces/googleProfBL.prof. Warning: address ffffffffffffffff is longer than address length 8 Warning: address ffffffffffffffff is longer than address length 8 Hexadecimal number > 0xffffffff non-portable at ./pprof line 4475. Hexadecimal number > 0xffffffff non-portable at ./pprof line 4475. Total: 5347 samples 258 4.8% 4.8% 258 4.8% 0x76d4c276 144 2.7% 7.5% 144 2.7% 0x76da2cc4 126 2.4% 9.9% 126 2.4% 0x5d0f8284 114 2.1% 12.0% 114 2.1% 0x76d27386 64 1.2% 13.2% 64 1.2% 0x76dba2dc 53 1.0% 14.2% 53 1.0% 0x76dba1f4 ...

so库是在调试模式下编译的(没有被剥离),我不知道为什么我得不到符号。

我试过这个:

我试着这样做--为我拥有的每个.o添加_ ./pprof --text --add_lib=aFileOfTheLibrary.o BinaryThatLoadsThatLibrary googleProfBL.prof Looks like I got a couple of symbols. Using local file /home/genius/PresControler/src-build-target/deploy/NavStartup. Using local file ../traces/googleProfBL.prof. Warning: address ffffffffffffffff is longer than address length 8 Warning: address ffffffffffffffff is longer than address length 8 Hexadecimal number > 0xffffffff non-portable at ./pprof line 4475. Hexadecimal number > 0xffffffff non-portable at ./pprof line 4475. Total: 5347 samples 258 4.8% 4.8% 258 4.8% 0x76d4c276 144 2.7% 7.5% 144 2.7% 0x76da2cc4 126 2.4% 9.9% 126 2.4% 0x5d0f8284 114 2.1% 12.0% 114 2.1% 0x76d27386 64 1.2% 13.2% 64 1.2% 0x76dba2dc 53 1.0% 14.2% 53 1.0% 0x76dba1f4 50 0.9% 15.1% 50 0.9% 0x76dbf1bc 34 0.6% 15.8% 34 0.6% 0x72eae1b4 30 0.6% 16.3% 30 0.6% 0x76d8a32a 30 0.6% 16.9% 30 0.6% 0x76d8e2c0 .. 0 0.0% 100.0% 7 0.1% std::forward_as_tuple <- I couldn't see that before!!!,但是我没有得到更多的符号。为什么我得不到符号,这与我使用英特尔检查结果并使用ARM获取结果有什么关系吗?我该怎么解决这个问题呢?有帮助吗?谢谢!

EN

回答 1

Stack Overflow用户

发布于 2014-09-24 22:33:11

我现在得到了更多的信息!我在我的应用程序中按下了ctrl+c,所以文件不知何故损坏了...在按ctrl+c之前,我做了一个调用ProfilerStop()的测试,它工作了(当然也使用了-- .so的前缀)。我仍然收到这些警告:Warning: address ffffffffffffffff is longer than address length 8 Warning: address ffffffffffffffff is longer than address length 8 Hexadecimal number > 0xffffffff non-portable at ./pprof line 4475. Hexadecimal number > 0xffffffff non-portable at ./pprof line 4475.,如果有人知道我为什么会得到这些警告(我假设是因为我正在调试其他设备生成的代码),请让我知道。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26017728

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档