Valgrind交叉编译
valgrind-3.12.0.tar.bz2
http://valgrind.org/downloads/old.html
./configure CC=arm-hisiv200-linux-gcc CXX=arm-hisiv200-linux-g++ AR=arm-hisiv200-linux-ar --host=arm-linux --prefix=/opt/valgrind-3.12.0
(给不会交叉编译的解释下,CC为交叉编译链hisi3535,gcc编译器,CXX为g++,都是海思SDK带的)
在检查脚本的时候可能弹出
error: Unsupported host architecture.Sorry
,
如下图所示错误
解决方法:
打开configure脚本
,找到
armv7*
字段(如下图所示)改写为
armv7* |arm
或者将
--host=arm-linux
改为
--host=armv7-linux
2)make
1) 在移植到开发板上的时候出现
“valgrind: failed to start tool 'memcheck' for platform 'arm-linux': No such file or directory
”,
如下图所示
2) 需要注意的一点,
网上很多教程都说要注意
--prefix
后面的安装目录要和开发板平台目录一致,比如说我现在在ubuntu x64编译,安装到/opt/valgrind-3.12.0目录,那么我们将整个valgrind-3.12.0目录拷贝到开发板,那么必须拷贝到开发板的/opt目录下,可能有的的确问题解决了。
但是其实本质上的问题是执行valgrind时,没有找到valgrind的lib库!!!
解决方案:
可以看到lib下面还有一层目录valgrind,这时候我们在开发板/etc/profile文件中添加一行
当然我们还可以在
PATH="/usr/bin:/usr/sbin:/bin:/sbin:/app/bin:
/opt/valgrind-3.12.0/bin
",黑色为一些系统路径配置(根据你自己profile里面PATH路径),添加后面红色部分就行了,执行下source /etc/profile ,就可以当valgrind命令使用了
执行下
valgrind --tool=memcheck --leak-check=full ./Tscu
本来以为在Hi3535上面可以使用了,其实看到上图的错误可以看到,出现一个错误码,最后定位是由于我们使用的Hi3535 是
armv5(由海思提供 两套一个是armv5一个是armv7,但是我们使用的是armv5),而valgrind最低硬件要求就是armv7和VFP,所以出现如上
图所示错误,其它编译步骤和移植没有问题
Valgrind交叉编译的更多相关文章
- valgrind简介以及在ARM上交叉编译运行【转】
转自:https://blog.csdn.net/dengcanjun6/article/details/54958359 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blo ...
- Ubuntu上交叉编译valgrind for Android 4.0.4的过程与注意事项
编译环境:Ubuntu x86_64(Linux root 2.6.32-45-generic #101-Ubuntu SMP Mon Dec 3 15:39:38 UTC 2012 x86_64 G ...
- 交叉编译mips平台上valgrind
STEP 1:下载最新版本的valgrind:http://www.valgrind.org/downloads/valgrind-3.9.0.tar.bz2 目前支持的平台,在官网上列表如下:{x8 ...
- 编译Valgrind arm交叉编译
1. 下载源码: http://valgrind.org/downloads/valgrind-3.9.0.tar.bz2 2. 加压缩: mkdir sw cd sw tar zxf valgr ...
- 应用 Valgrind 发现 Linux 程序的内存问题及交叉编译for arm
Valgrind 概述 体系结构 Valgrind是一套Linux下,开放源代码(GPL V2)的仿真调试工具的集合.Valgrind由内核(core)以及基于内核的其他调试工具组成.内核类似于一个框 ...
- valgrind,arm-linux交叉编译
1. 下载及解压valgrind-3.9.0 2.CC=/opt/hisi-linux/x86-arm/arm-hisiv200-linux/target/bin/arm-hisiv200-linux ...
- arm交叉编译Valgrind
1. wget http://valgrind.org/downloads/valgrind-3.9.0.tar.bz2 tar xvf valgrind-3.9.0.tar.bz2 cd valgr ...
- 在ARM Linux 使用 Valgrind
Linux valgrind 移植到ARM-Linux 一.Cross-Compile/交叉编译 (1)下载及解压Valgrind-3.11 (2)修改confirure 将armv7*)修改为ar ...
- valgrind的编译和使用
ubuntu 平台: valgrind 3.8.1 一. 编译 ./configure --prefix=/home/frank/test/valgrind/PC/local 报错:checking ...
- 内存泄漏定位工具之 valgrind 使用
1 前言 前面介绍了 GCC 自带的 mtrace 内存泄漏检查工具,该篇主要介绍开源的内存泄漏工具 valgrind,valgrind 是一套 Linux 下,开放源代码的动态调试工具集合,能够检测 ...
随机推荐
- 在虚拟机上安装CentOS6.5(minimal)
在虚拟机上安装CentOS6.5(minimal) 2017年04月04日 09:40:38 kongmd 阅读数:2171 1.安装CentOS6.5 1.首先下载VMware ,和CentOS ...
- logstash从MySQL导入数据到ES
下载安装 一定要对应ES版本(5.x,6.x,7.x) win下不用安装解压即用 , 解压目录不能带有空格和中文 , 否则会有奇奇怪怪的报错无法运行 win下要给logstash文件夹赋予管理员权限 ...
- 面试-JVM
1.java内存模型 / java运行时数据区模型? 元空间属于本地内存 而非JVM内存 内存模型 程序计数器 1.作为字节码的行号指示器,字节码解释器通过程序计数器来确定下一步要执行的字节码指令,比 ...
- python+appium拉起APP
1.首先需要完成环境配置: JDK:https://www.cnblogs.com/wenlongma/p/17103062.html: SDK:https://www.cnblogs.com/w ...
- android装包
一.找到对应包体apk 二.数据线连接电脑及手机,弹出USB连接选项并选择传输文件 注:如果未弹出USB连接选项可尝试换根数据线解决 三.点击我的电脑找到本机设备 四.将对应包体文件拖入本机设备 五. ...
- Weblogic禁用不安全的http请求
参考链接: https://blog.csdn.net/linfanhehe/article/details/78470733
- 使用php将字典格式的字符串转为array
例: 原字符串为 $a = '{"errcode":0,"errmsg":"ok","msgid":1472671765 ...
- supervisor不一样的日志轮转
出于项目需求,需要读取某个进程的最新日志,而这个进程刚好是supervisor管控. 很自然地我就想到了,根据日志的编辑时间排序,获取最新的日志文件. 然而,发现了奇怪的一幕: 发现什么没有? web ...
- 安装了lrzsz ,使用时,还是提示找不到
安装了lrzsz ,使用时,还是提示找不到
- 2.27总结——JDBC学习
今天初步了解了Javaweb的JDBC,了解其基础语句,以及连接数据库的方式,但是自我感觉很抽象,实际上手仍有些困难,需要参考模板,增删改查目前进度在增和查,继续努力,争取本学期尽快跟上同学学习进度!