硬件环境:DM365
打印机型号:HP P1007
虚拟机系统:Red Hat Enterprise Linux 5
交叉编译环境:Ti交叉编译环境安装包
二、详细步骤
1.下载Ghostscript 9.01
2.解压,tar xzvf ghostscript-9.01.tar.gz
3.执行cd ghostscript-9.01
4.执行./configure
5.执行make,生成x86下的gs,在源代码的bin目录下
6.解压,mkdir ghostscript-9.01.arm tar xzvf ghostscript-8.15.tar.gz -C ghostscript-9.01.arm
7.进入ghostscript-9.01.arm,执行./configure --host=arm_v5t_le --prefix=/opt/printer(注:如果是在三星的板子上,修改--host=arm_linux)
8.执行make ,出错,复制ghostscript-9.01/obj目录下的mkromfs可执行文件拷贝到ghostscript-9.01.arm/obj目录下
9.重新执行make编译生成bin/gs,有17M的大小,再执行make install,将bin/gs拷贝到开发板中/bin目录下
10.在开发板中执行gs -h(x86下编译出来的gs),可获取gs的帮助信息,从中了解到相应支持的打印机的类型
11.将虚拟机中的/opt/printer,拷贝到开发板中相应的目录下。将源代码中的./Resources/Font拷贝到开发板中的/opt/printer1/share/ghostscript/9.01/Resource/Font下
12.虚拟机中执行arm_v5t_le-ldd bin/gs,查看可执行文件依赖的库文件,并将依赖的库文件拷贝到开发板中
13.下载foo2zjs
14.执行:tar zxf foo2zjs.tar.gz,cd foo2zjs ,make,并将生成的arm2hpdl保存下来
15.修改Makefile,使得CC=arm_v5t_le-gcc,执行make,(注:这里编译生成的结果是错误的,具体解决办法看下面)
16.配置虚拟机可上网,执行./getweb P1007,下载得到惠普打印机P1007的固件sihpP1005.img
17.将步骤14中保存的arm2hpdl替换步骤15编译生成的arm2hpdl二进制文件,执行./arm2hpdl sihpP1005.img > sihpP1007.dl
18.将foo2xqx及sihpP1007拷贝到开发板文件系统中的/bin目录下
文中要用到的Ghostscript 9.01与foo2zjs文件下载在Linux公社论坛的1号FTP服务器里,下载地址:
FTP地址:ftp://www.linuxidc.com
在 2011年LinuxIDC.com\4月\嵌入式Linux系统中打印机驱动的移植