arm linux 移植支持 HP打印机
背景
由于业务需要,需要hi3531d主板上加入对于HP打印机的支持。
通过与产品经理,技术主管的沟通;通用支持是不现实的,只要求彩色打印,先不考虑打印机的价格,只要支持一款打印机即可。
注意:
Linux下支持打印机有很多局限性,并非每一种打印机型号都被支持。惠普打印机的支持是最好的。
过程:

根据网友的资料,有关Linux打印系统只要从上到下能够连一条线通即可组成一套打印系统。
寻找合适的软件方案:
使用CUPS + IJS:
前往:"Open Printing"进行查找。根据支持的型号翻阅了淘宝,京东,亚马逊。
此时,发现有人实现了 CUPS+ IJS(HPLIP)的方案。
hlip由HP厂商直接提供的支持驱动,但这些驱动针对桌面系统,需要自己进行编译移植:"http://www.openprinting.org/download/ijs/"由于选型打印机比较困难,研发成本比较高,而且很多出现在列表中的打印机已经停产买不到了。
遂放弃此方案,但此方案是有可行性的。(剩下编译gutenprint不通过:《 Android遇上打印机》)使用foo2zjs + ghostscript:
foo2zjs 系列支持一部分的打印机,像foo2zjs、foo2hiperc、foo2xqx、foo2hbpl、foo2lava都有默认的打印机支持。
(如果foo2zjs已支持,直接用foo2zjs将ppm文件转换成打印机支持的流,传入打印机即可打印。)
添加foo2zjs工具(用于发送数据到打印机进行打印);
添加gohstscript工具(用于转换文档格式到打印机能识别的pbm格式);
[可选]添加enscript,用于把txt,c,cpp等文档转换到打印机能识别的PostScript格式;
移植Ubuntu等文件系统,再安装通用的打印机驱动
成本太高,放弃支持。成功案例:《使用树莓派搭建无线打印机》
arm linux 移植支持 HP打印机的更多相关文章
- arm linux 移植 x265
背景 本来想着把 x265编译到ffmpeg里面,搞定了x265的编译:但是一直报ERROR: x265 not found using pkg-config这个错误,我按照网上的资料,查看了ffbu ...
- Linux 安装 go 以及 arm linux 移植 go
背景 Go是一门全新的静态类型开发语言,具有自动垃圾回收,丰富的内置类型,函数多返回值,错误处理,匿名函数,并发编程,反射等特性. 从Go1.4之后Go语言的编译器完全由Go语言编写,所以为了从源代码 ...
- arm linux 移植 MQTT (paho、mosquitto)
前言 我们在这里做2件事情: 1)编译 paho.mqtt.mosquitto 2个开源项目的c版本库(mosquitto库没有用上) 2)编译好 依赖 paho.mqtt的库编写例程 + mosqu ...
- arm linux 移植 ffmpeg 库 + x264
背景 Ffmpeg 中带有h264的解码,没有编码,需要添加x264.libx264是一个自由的H.264编码库,是x264项目的一部分,使用广泛,ffmpeg的H.264实现就是用的libx264. ...
- arm linux 移植 PHP
背景: PHP 是世界上最好的语言. host平台 :Ubuntu 16.04 arm平台 : 3531d arm-gcc :4.9.4 php :7.1.30 zlib :1.2.11 libxml ...
- arm linux 移植 gdb/gdbserver
背景 调试工具gdb的使用对于嵌入式Linux开发人员来说是一项不可少的技能. 目前,嵌入式 Linux系统中,主要有三种远程调试方法,分别适用于不同场合的调试工作:用ROM Monitor调试目标机 ...
- arm linux 移植 udhcp 与 使用
背景 在一些网络环境下,需要静态IP不够现实,需要使用DHCP进行自动获取IP地址. udhcpc是一个面向嵌入式系统的非常小的DHCP客户端,字母的缩写微μ- DHCP -客户端client(μDH ...
- arm linux 移植 rsync
背景: 在产品开发中可以使用rsync进行大文件的拷贝,断点续传. host平台 :Ubuntu 16.04 arm平台 : 3531d rsync :3.1.3 arm-gcc :4.9.4 ...
- arm linux 移植 jpeg
背景: host平台 :Ubuntu 16.04 arm平台 : S5P6818 jpeg :v9c arm-gcc :4.8.1 主机准备: 运行以下脚本: ## # Copyright By Sc ...
随机推荐
- java web 学生信息录入
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding= ...
- 启动named服务报错!
安装及配置bind服务程序: yum -y install bind 三个关键文件: 主配置文件(/etc/named.conf) 区域配置文件(/etc/named.rfc1912.zones) 数 ...
- 关于cmd的命令行参数的问题
最近学习Java了解到发现需要配置环境变量其中Path需要更改为 %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin; 而这样的行为无意间导致了win中cmd的一些参数无法使用,比 ...
- php 基础知识 常见面试题
1.echo.print_r.print.var_dump之间的区别 * echo.print是php语句,var_dump和print_r是函数 * echo 输出一个或多个字符串,中间以逗号隔开, ...
- ubuntu开启mysql远程连接,并开启3306端口
mysql -u root -p 修改mysql库的user表,将host项,从localhost改为%.%这里表示的是允许任意host访问,如果只允许某一个ip访问,则可改为相应的ip mysql& ...
- VB.NET中Sub和Function的区别
function是函数,sub是子程序,都可以传递参数,但函数有返回值,子程序没有 function 可以用自身名字返回一个值,sub 需定义别的变量,用传址方式传回值. Sub 过程与Functio ...
- vue element多图上传
最近项目需要优化图片上传,由单个改成多个,这里记录下自己遇到的一些问题和解决方法 本以为是传全部图片到后台,然后统一处理,但后面在Network中发现upload组件其实还是单一上传,那只能依照它的方 ...
- 循环读取寄存器(QSFP-DD)并且分别保存log
#!/bin/bash ####################################################################### #Created by: Bin ...
- Checked exceptions: Java’s biggest mistake-检查型异常:Java最大的错误(翻译)
原文地址:http://literatejava.com/exceptions/checked-exceptions-javas-biggest-mistake/ 仅供参考,毕竟我四级都没过 Chec ...
- 常见Http状态码大全详解
HTTP状态码的分类 HTTP状态码由三个十进制数字组成,第一个十进制数字定义了状态码的类型,后两个数字没有分类的作用.HTTP状态码共分为5种类型: 具体如下: 状态码 内容 详细内容 信息告知 - ...