Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1002900
  • 博文数量: 153
  • 博客积分: 4195
  • 博客等级: 上校
  • 技术积分: 2631
  • 用 户 组: 普通用户
  • 注册时间: 2009-06-22 11:32
文章存档

2012年(7)

2010年(35)

2009年(111)

分类: LINUX

2010-12-17 21:46:43

 

嵌入式打印机完整教程:

有很多方案,目前采取的是ghostscript-8.15+foo2zjs的方案,一下内容基于cj的文档。感谢cj之前的工作。

1 编译foo2zjs

先直接使用gcc编译,直接敲入make指令,一切顺利,然后将其中的arm2hpdl拉出来保存好。

然后交叉编译,这个交叉编译比较简单,修改makefile,使CC=arm-linux-gcc,然后make,一切顺利。

再使用编译出来的getweb程序,命令./getweb 1020得到sihp1020.img(对应hp1020打印机的固件程序)

这时候再用我们刚才用x86 gcc编译的arm2hpdl工具将sihp1020.img转化为sihp1020.dl(这一步非常重要)

将生产的sihp1020.dlfoo2zjs拷贝至开发板端的文件系统中。完成。

 

2 编译ghostscript-8.15

编译ghostscript-8.15可参考阿虚的文章http://hi.baidu.com/aokikyon/blog/item/5408e443e176081a73f05d80.html,写的很不错,唯一需要注意的是,最好在configure配置的时候加入--prefix的选项,比如我的是/disk2/printer/ghost-install

编译完成之后,输入make install,所有的文件将会生成灾这个目录底下。

这时候拷贝到开发板端文件系统有一定的讲究,需要同样在开发板端创建一个/disk2/printer/ghost-install,这样运行gs的时候才不会说找不到一些配置的ps文件。

另,交叉编译ghostscript时,你的交叉编译工具最好把jpegzlibpng等库都装好。

 

 

3 使用

首先usb的内核选项要加上usb printer这个选项。

插上打印机usb---mdev -s重新生产节点----cp sihp1020.hl /dev/lp0(这一步是加载打印机固件,这时候可以用foo2zjs生成的一个叫usb_printerid的小工具去查看lp0, ./usb_printerid /dev/lp0,如果加载成功能看到固件版本,这时还能听到打印机被驱动的声音)------》利用foo2zjs加载(这部分可参考阿虚的文章,我不重复了)

阅读(9590) | 评论(0) | 转发(1) |
给主人留下些什么吧!~~