0、  编译环境所需要的工具

libsocketcan-0.0.11.tar.bz2

canutils-4.0.6.tar.bz2

下载路径

https://public.pengutronix.de/software/libsocketcan/libsocketcan-0.0.11.tar.bz2 #0.0.11版本

https://public.pengutronix.de/software/socket-can/canutils/v4.0/canutils-4.0.6.tar.bz2 #4.0.6版本

1、将libsocketcan-0.0.11.tar.bz2,canutils-4.0.6.tar.bz2放在主机Linux系统目录下。本项目将这两个文件放在/home/fangzeli/work目录下,work是新建的目录

2、解压libsocketcan-0.0.11.tar.bz2:输入tar -jxvf libsocketcan-0.0.11.tar.bz2 解压libsocketcan文件

解压完成后libsocket-0.0.11目录下的文件如下所示

3、输入cd libsocketcan-0.0.11命令,进入libsocketcan-0.0.11目录;输入mkdir out,在目录下创建out文件夹

4、配置编译环境,输入

./configure --host=arm-linux-gnueabihf --prefix=/home/fangzeli/work/libsocketcan-0.0.11/out

arm-linux-gnueabihf是主机Linux系统安装的交叉编译工具,prefix后面是路径

5、输入make指令,开始编译libsocketcan

6、输入make install

注意:out文件夹一定要建,当然文件夹名字随便取,不然会报错。编译完成后生成的库都在out/lib里,将这些库放到开发板的文件系统内,放在lib目录或usr/lib目录都可以。

7、回到work目录下,输入tar -jxvf canutils-4.0.6.tar.bz2解压缩

8、输入cd canutils-4.0.6/进入目录,输入mkdir out,创建out文件夹

9、输入./configure --host=arm-linux-gnueabihf --prefix=/home/fangzeli/work/canutils-4.0.6/out    libsocketcan_LIBS=-lsocketcan  LDFLAGS="-L/home/fangzeli/work/libsocketcan-0.0.11/out/lib/" libsocketcan_CFLAGS="-I/home/fangzeli/work/libsocketcan-0.0.11/out/include" 配置编译环境

10、将libsocketcan-0.0.11文件夹下的libsocketcan.h和can_netlink.h复制到canutils的include文件夹下,输入make开始编译

11、输入make install,out文件夹下回生成一堆文件,out/sbin目录下有canconfig工具,out/bin下有candump/canecho/cansend/cansequence四个工具

12、将out文件夹放置在开发板上即可使用。

linux下can调试工具canutils安装与使用的更多相关文章

  1. linux下can调试工具canutils安装过程记录

    https://www.cnblogs.com/chenfulin5/p/6797756.html 一.下载源码 下载canutils和libsocketcan libsocketcan地址:http ...

  2. linux下php调试工具xdebug安装配置

    xdebug简介 Xdebug是php的一款调试工具,是基于zend的一个扩展,可以用来跟踪,调试和分析PHP程序的运行状况.如变量,函数调试,性能监测,代码覆盖率等 xdebug安装 1.下载xde ...

  3. Linux下apache+phppgadmin+postgresql安装配置

    Linux下apache+phppgadmin+postgresql安装配置 操作系统:CentOS 安装包:httpd(首选yum), php(包括php以及php-pgsql,php-mbstri ...

  4. Linux下的网络远程安装

    Linux下的网络远程安装 1.用RHEL6.5光盘安装第一台服务器 2.在第一台服务器上配置YUM服务器 先创建一个挂载 #mount #umount /dev/cdrom #mkdir /mnt/ ...

  5. Linux下指定版本编译安装LAMP

    说明: 操作系统:CentOS 6.5 64位 需求: 编译安装LAMP运行环境 各软件版本如下: MySQL:mysql-5.1.73 Apache:httpd-2.2.31 PHP:php-5.2 ...

  6. 【转】Linux下XenServer管理工具安装

    转载文章 - Linux下XenServer管理工具安装 Xen-Server 6.5 虚拟机安装Linux系统 vmware安装ubuntu12.04嵌套安装xen server(实现嵌套虚拟化) ...

  7. linux下.run文件的安装与卸载

    linux下.run文件的安装与卸载   .run文件的安装很简单,只需要为该文件增加可执行属性,即可执行安装 以 virtualbox 的安装文件 virtualbox-3.1.6-59338-Li ...

  8. Linux下rar unrar的安装

    Linux下rar unrar的安装: 以3.8.0版本为例,如果是64位平台,执行以下命令,也可以去官方网站:)下载最新版: wget http://www.rarlab.com/rar/rarli ...

  9. 【转】Linux下Android ADB驱动安装详解

    原文网址:http://blog.csdn.net/zhenwenxian/article/details/5901350 Linux下Android ADB驱动安装详解 概述 最近由于内置的合作商比 ...

随机推荐

  1. Shell 脚本是什么?

    一个 Shell 脚本是一个文本文件,包含一个或多个命令.作为系统管理员,我们经常需要使用多个命令来完成一项任务,我们可以添加这些所有命令在一个文本文件(Shell 脚本)来完成这些日常工作任务.- ...

  2. Linux Centos7使用ping命令ping不通网络的解决方案

    本解决方案不配置dns,都是ping的IP地址,所以如果想ping域名,则加上DNS项的配置后自行尝试吧 我使用的虚拟机系统信息: Linux:Centos7 Network:虚拟机设置的桥接模式(自 ...

  3. Java 枚举和单例模式?

    编写 Java 程序时, 如何在 Java 中创建死锁并修复它?经典但核心Java面试问题之一.如果你没有参与过多线程并发 Java 应用程序的编码,你可能会失败.如何避免 Java 线程死锁?如何避 ...

  4. 一个 Redis 实例最多能存放多少的 keys?List、Set、 Sorted Set 他们最多能存放多少元素?

    理论上 Redis 可以处理多达 232 的 keys,并且在实际中进行了测试,每个实 例至少存放了 2 亿 5 千万的 keys.我们正在测试一些较大的值.任何 list.set. 和 sorted ...

  5. 学习openstack(七)

    相关资料: https://www.cnblogs.com/shhnwangjian/category/942049.html https://www.cnblogs.com/goodcook/cat ...

  6. 配置sublime text 3来编写Markdown

    如何使用sublime text 3编写Markdown  编写markdown的编辑器无论客户端还是在线的都有很多,这里将sublime text3作为markdown的编辑器,需要进行一些配置. ...

  7. 『现学现忘』Docker基础 — 37、ONBUILD指令介绍

    目录 1.ONBUILD指令说明 2.演示ONBUILD指令的使用 3.补充:crul命令解释 1.ONBUILD指令说明 ONBUILD是一个特殊的指令,它后面跟的是其它指令,比如 RUN, COP ...

  8. 高效使用Java构建工具,Maven篇|云效工程师指北

    大家好,我是胡晓宇,目前在云效主要负责Flow流水线编排.任务调度与执行引擎相关的工作. 作为一个有多年Java开发测试工具链开发经验的CRUD专家,使用过所有主流的Java构建工具,对于如何高效使用 ...

  9. Bootstrap 之 Metronic 模板的学习之路 - (1)总览

    写在前面 bootstrap 的模板非常多,Envato 上有着各种各样的免费及付费模板.Metronic 是我最喜欢的模板之一(看一眼就喜欢上的那种),当前售价 $28 ,觉得赞的,不妨支持一下作者 ...

  10. js常用的函数库

    阻止冒泡.默认行为.事件捕获 /* funname preventEventPropagation * desc 阻止冒泡事件&阻止默认行为&阻止事件捕获 * params {name ...