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. Mysql查询优化器之关于JOIN的优化

    连接查询应该是比较常用的查询方式,连接查询大致分为:内连接.外连接(左连接和右连接).自然连接 下图展示了 LEFT JOIN.RIGHT JOIN.INNER JOIN.OUTER JOIN 相关的 ...

  2. InnoDB中加锁?

    InnoDB 实现了两种类型的行锁,共享锁(S)与排他锁(X).然后由于 InnoDB引擎又支持表级锁,所以它内部又有意向共享锁(IS)与意向排他锁(IX).这两种表锁,都是InnoDB内部自动处理, ...

  3. 请说说你对Hibernat的理解?JDBC和Hibernate各有什么优势和劣势?

    Hibernate是一个轻量级的持久层开源框架,它是连接Java应用程序和关系数据库的中间件,负责Java对象和关系数据之间的映射.Hibernate内部对JDBC API进行了封装,负责Java对象 ...

  4. 面试问题之C++语言:说一下static关键字的作用

    1.全局静态变量 在全局变量加上关键字static,全局变量就定义成一个全局静态变量,存放于静态存储区,在整个程序运行期间一直存在:未经初始化的全局静态变量会被自动初始化为0:全局静态变量在声明他的文 ...

  5. 什么是 UML?

    UML 是统一建模语言(Unified Modeling Language)的缩写,它发表于 1997 年,综合了当时已经存在的面向对象的建模语言.方法和过程,是一个支持模型 化和软件系统开发的图形化 ...

  6. 学习Keepalived(一)

    一.Keepalived 详解 1.Keepalived 定义 Keepalived 是一个基于VRRP协议来实现的LVS服务高可用方案,可以利用其来避免单点故障.一个LVS服务会有2台服务器运行Ke ...

  7. C语言之标识符(知识点3)

    条件:用户表示符仅由大小写英文字母,数字和下划线组成,且第一个字符不能是数字 注意: 不能和关键字或函数库相同名字 但关键字的大写就可以用了,因为关键字都是小写的,而C语言区分大小写 案例

  8. jdbc的快速入门(需要mysql-connector-java-5.1.39-bin.jar包)

    package Lianxi;import java.io.InputStream;import java.sql.Connection;import java.sql.DriverManager;i ...

  9. 一文读懂充电宝usb接口电路及制作原理详细

    转自:http://www.elecfans.com/dianlutu/dianyuandianlu/20180511675801.html USB充电器套件,又名MP3/MP4充电器,输入AC160 ...

  10. Javascript--function的name属性

    1.非标准的name属性 function sayHi(){  console.log("Hi");} console.log(sayHi.name);