SUSE12.2 编译usbutils
折腾了两天,终于交叉编译出来lsusb命令可以在单板上跑起来,记录一下
1:编译eudev
下载地址:https://dev.gentoo.org/~blueness/eudev/,版本eudev-3.2.2
#export EUDEV_ROOT=`pwd`
#./configure CC=arm-linux-gnueabihf-gcc CXX=arm-linux-gnueabihf-g++ --host=arm-linux --prefix=$PWD/_install --disable-blkid --disable-kmod
#make -j2
#make install
CFLAGS=-I$EUDEV_ROOT/_install/include LDFLAGS=-L$EUDEV_ROOT/_install/lib
#export PKG_CONFIG_PATH=$PWD/_install/lib/pkgconfig/
查看_install目录
2:编译libusb
下载地址:https://github.com/libusb/libusb/releases?after=v1.0.21-rc4,用的版本为libusb-1.0.18
#export LIBUSB_ROOT=`pwd`
./configure CC=arm-linux-gnueabihf-gcc CXX=arm-linux-gnueabihf-g++ --host=arm-linux CFLAGS=-I$EUDEV_ROOT/_install/include LDFLAGS=-L$EUDEV_ROOT/_install/lib
# make -j2
# make install
查看_install目录
-lpthread
3:编译usbutils,版本usbutils-012
#export PKG_CONFIG_PATH=$EUDEV_ROOT/_install/lib/pkgconfig/:$LIBUSB_ROOT/_install/lib/pkgconfig/
./configure CC=arm-linux-gnueabihf-gcc CXX=arm-linux-gnueabihf-g++ --host=arm-linux --prefix=$PWD/_install
# make -j2
# make install
将新编译出来的lsusb命令拷贝至运行环境(同时需要将对应的libusb库也拷贝至运行环境,同时配置LD_LIBRARY_PATH)
为方便执行,编译为静态库
./configure CC=arm-linux-gnueabihf-gcc CXX=arm-linux-gnueabihf-g++ --host=arm-linux --prefix=$PWD/_install CFLAGS='-g -O2 -static'
修改Makefile文件,在UDEV_LIBS中,添加对pthread库的调用
例如:
UDEV_LIBS = -LCROSS_TOOLCHAINS_ROOT/arm-linux-gnueabihf/libc/usr/lib -lpthread -L/usr1/wangjunhui/usbutils/eudev-3.2.2/_install/lib -ludev
SUSE12.2 编译usbutils的更多相关文章
- 编译树莓派2代B型OpenWrt固件实现无线路由器及nodogsplash认证功能
最终功能: 无线路由器的主要功能,网口WAN接入,USB无线网卡AP热点输出,连上wifi之后跳转到认证页面,点击认证方可上网,有效时间10分钟,认证成功之后自动访问指定网址. 文章结尾有编译好的刷机 ...
- Centos6下编译LEDE/OpenWrt
准备工作 1. 安装依赖软件 这是官方文档提供的依赖列表 yum install subversion binutils bzip2 gcc gcc-c++ gawk gettext flex ncu ...
- rk3328编译Linux固件
一.编译 Linux 固件 这一章将介绍编译 ROC-RK3328-CC Linux 固件的整个流程. 1.1 准备工作 Linux 固件在如下的环境中编译: Ubuntu 16.04 amd64 安 ...
- openwrt编译加载龙尚U9300模组上网
硬件平台:MT7628A openwrt版本:MTK_SDK 1.添加模组信息 /build_dir/target-mipsel_24kc_musl/linux-ramips_mt76x8/linux ...
- TODO:macOS编译PHP7.1
TODO:macOS编译PHP7.1 本文主要介绍在macOS上编译PHP7.1,有兴趣的朋友可以去尝试一下. 1.下载PHP7.1源码,建议到PHP官网下载纯净到源码包php-7.1.0.tar.g ...
- Centos6.5下编译安装mysql 5.6
一:卸载旧版本 使用下面的命令检查是否安装有MySQL Server rpm -qa | grep mysql 有的话通过下面的命令来卸载掉 rpm -e mysql //普通删除模式 rpm -e ...
- CENTOS 6.5 平台离线编译安装 PHP5.6.6
一.下载php源码包 http://cn2.php.net/get/php-5.6.6.tar.gz/from/this/mirror 二.编译 编译之前可能会缺少一些必要的依赖包,加载一个本地yum ...
- CENTOS 6.5 平台离线编译安装 Mysql5.6.22
一.下载源码包 http://cdn.mysql.com/archives/mysql-5.6/mysql-5.6.22.tar.gz 二.准备工作 卸载之前本机自带的MYSQL 安装 cmake,编 ...
- Android注解使用之注解编译android-apt如何切换到annotationProcessor
前言: 自从EventBus 3.x发布之后其通过注解预编译的方式解决了之前通过反射机制所引起的性能效率问题,其中注解预编译所采用的的就是android-apt的方式,不过最近Apt工具的作者宣布了不 ...
随机推荐
- 【CTS2019】随机立方体(容斥)
[CTS2019]随机立方体(容斥) 题面 LOJ 洛谷 题解 做这道题目的时候不难想到容斥的方面. 那么我们考虑怎么计算至少有\(k\)个极大值的方案数. 我们首先可以把\(k\)个极大值的位置给确 ...
- golang学习笔记 --flag
概述 flag包提供了一系列解析命令行参数的功能接口 命令行语法 命令行语法主要有以下几种形式 -flag //只支持bool类型 -flag=x -flag x //只支持非bool类型 以上语法对 ...
- vscode 代码折叠快捷键,折叠所有/展开所有
1.折叠所有区域的快捷键:ctrl + k ctrl + 0 (这里是数字键0) 2.展开所有区域的快捷键:ctrl + j ctrl + j
- C# 调用打印机打印文件
C# 调用打印机打印文件,通常情况下,例如Word.Excel.PDF等可以使用一些对应的组件进行打印,另一个通用的方式是直接启用一个打印的进程进行打印.示例代码如下: using System.Di ...
- Centos7 Putty SSH密钥登录
在本地电脑打开PuTTYgen程序,点击Generate生成密钥,可以再设置一层密码,保存公钥和私钥到本地文件,保存好,最好多处备份 先用密码登录远程Centos vim ~/.ssh/authori ...
- 2019 上海轻轻java面试笔试题 (含面试题解析)
本人5年开发经验.18年年底开始跑路找工作,在互联网寒冬下成功拿到阿里巴巴.今日头条.上海轻轻等公司offer,岗位是Java后端开发,因为发展原因最终选择去了上海轻轻,入职一年时间了,也成为了面 ...
- 关于C++中使用++it还是it++的问题
我们经常使用for循环来遍历东西,循环变量可以前自增也可以后自增,发现对遍历结果没啥影响,但是该如何选择呢? 我们应该尽量使用前自增运算符而不是后自增运算符,即用 ++ Iter 代替 Iter++ ...
- ECharts学习指南
1.了解ECharts ECharts简单说就是互联网开发程序过程中,后台数据库用以实现数据到图形的映射的一个插件. 具体来说一个使用 JavaScript 实现的开源可视化库,可以流畅的运行在PC和 ...
- yaml格式配置文件
YAML 是一种可读性非常高,与程序语言数据结构非常接近.同时具备丰富的表达能力和可扩展性,并且易于使用的数据标记语言. python中处理 Yaml 格式的数据需要先下载pyyaml: pip in ...
- Tomcat服务器编码格式设置
/** *1.找到.xml server文件 */ /** * 2. 设置encoding */