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 ...
随机推荐
- 第3章 Java基本的程序设计结构
3.运算符 浅谈java中源码常见的几个关键字(native,strictfp,transient,volatile) 需要注意 , 整数被 0 除将会产生一个异常, 而浮点数被0 除将会得到无穷大或 ...
- 关于python 3.x import matplotlib as plt ImportError: DLL load failed: 找不到指定的模块
windows 10下使用conda update --all更新过后,就出现这样的问题了,各种包不能用了,然后在stackoverflow上搜到有人也遇到相同的问题,并通过其中的回答找到了原因,这里 ...
- 看完这篇微服务架构设计思想,90%的Java程序员都收藏了
本博客强烈推荐: Java电子书高清PDF集合免费下载 https://www.cnblogs.com/yuxiang1/p/12099324.html 微服务 软件架构是一个包含各种组织的系统组织, ...
- 最权威的json自定义格式
1.封装result,作为返回的对象 public class Result<T> { private int code; private String msg; ...
- HTML5中改变了哪些东西?
HTML5 推出的理由 想要把目前web上存在的各种问题一并解决 Web浏览器之间的兼容性很低 文档结构不够明确 Web应用程序的功能受到了限制 HTML5重新定义了浏览器的统一标准 HTML5 与 ...
- Spring学习(一)
搭建环境 1.创建普通的Java工程 2.添加相应的jar包,下载链接:https://files.cnblogs.com/files/AmyZheng/lib.rar,此外,为了打印信息,我们还需要 ...
- SpringBoot Controller找不到视图路径
在启动类加注解@ComponentScan("com.controller")即可,括号里表示Controller所在包名. 参考:https://blog.csdn.net/ji ...
- aws-ec2-upload
EC2上建立文件夹并开放权限 $ mkdir /home/upload$ chmod 777 /home/upload 本机文件 上传 到EC2服务器$ scp -i awsub01.pem noip ...
- Java中正确使用hashCode和equals方法
在这篇文章中,我将告诉大家我对hashCode和equals方法的理解.我将讨论他们的默认实现,以及如何正确的重写他们.我也将使用Apache Commons提供的工具包做一个实现. 目录: hash ...
- 获取一个元素距离顶部的位置和window的滚动值
获取一个元素距离顶部的位置: $(".box").offset().top; 获取window的滚动值: $(window).scrollTop();