can 在Linux 里面是作为一个网络设备存在的,记录一下 canconfig
移植过程。
-
一、 下载
canutils
和libsocketcan
-
libsocketcan 地址: http://public.pengutronix.de/software/libsocketcan/
-
canutils 地址 : http://public.pengutronix.de/software/socket-can/canutils/v4.0/
-
// 下载最新的 canutils-4.0.6.tar.bz2 以及 libsocketcan-0.0.10.tar.bz2
-
二、 下载完先编译
libsocketcan
库。
-
// 解压
-
tar -xvf canutils-4.0.6.tar.bz2
-
cd libsocketcan-0.0.10/
-
mkdir out
-
// 默认已经配置了交叉编译器。
-
./configure --prefix=/home/qt/test/libsocketcan-0.0.10/out \
-
--host=arm-none-linux-gnueabi
-
// 编译
-
make
-
make install
-
// 生成的库在 out/lib 下
-
qt@aplex:~/test/libsocketcan-0.0.10$ ls out/lib/
-
libsocketcan.a libsocketcan.la libsocketcan.so
-
libsocketcan.so.2 libsocketcan.so.2.2.1 pkgconfig
-
// 将这些生成的库复制到你板子的文件系统内,放在 lib 目录下也行,放在 usr/lib 里面也可以
-
三、 再进行编译
canconfig
-
// 先将 libsocketcan 里面的头文件 libsocketcan.h can_netlink.h 复制到 canutils 的 include 里面
-
tar -xvf canutils-4.0.6.tar.bz2
-
cd canutils-4.0.6/
-
mkdir out
-
// 配置
-
./configure --host=arm-none-linux-gnueabi \
-
--prefix=/home/qt/test/canutils-4.0.6/out \
-
libsocketcan_LIBS=-lsocketcan \
-
LDFLAGS="-L/home/qt/test/libsocketcan-0.0.10/out/lib/" \
-
libsocketcan_CFLAGS="-I/home/qt/test/libsocketcan-0.0.10/out/include"
-
make
-
make install
-
// 最后在 out/sbin 下能见到 canconfig 命令。
-
qt@aplex:~/test/canutils-4.0.6$ ls out/sbin/
-
canconfig