목표는 리눅스 상에서  프린터를 추가 하고 출력 하는 프로그램을 작성 하는 것입니다.

그 후 CUPS를 임베디드 장비에 포팅 한 후 장비에서 프린터로 USB를 연결 하여

장비의 내용을 바로 프린터로 출력 할 예정입니다.

먼저 CUPS 를 리눅스 상에서 설치 한 후 프린터가 출력 하는지 테스트를 해보려

하는데 동작을 하지 않아 이렇게 질문을 드립니다.    

CUPS 1.2.2 소스를 다운로드 하여 압축 해제 후 컴파일 하였습니다.

컴파일 한 순서는

./configure --prefix=/CUPS

./make  

./make install

입니다.

그 후 /etc/init.d/cups restart

한 후

/CUPS/sbin/lpadmin -p TestPrint -E -v usb:/dev/usb/lp0

-m /CUPS/share/cups/model/laserjet.ppd




명령어 수행 후

/CUPS/sbin/cupsenable TestPrint

명령어 수행 후

/CUPS/sbin/accept TestPrint




/CUPS/bin/lpr -P TestPrint -o position=top -o media=A4 출력 파일




명령어로 출력을 시도 하였지만 프린터가 동작 하지 않았습니다.

사용하고 있는 프린터는 CUPS 1.2.2에서 지원 하는 프린터 이며 사용하는 ppd 파일은 laserjet.ppd 임을 확인 하였습니다.

그래서 CUPS 를 Compile 하는 과정에서 에러가 있거나 사용방법이 잘못 된 것으로 예상됩니다.

1) 지금 수행한 방법이 잘못 되었는지.

2) 혹시 따로 프린터 드라이버를 설치하지 않고 제공하는 PPD 파일을 이용하여 특정 프린터를 등록 하고 사용 할 수 있는지 입니다.




아래의 내용은 컴파일 시 warning입니다.







---------------makeall 수행 시 warning-------------------------




stertolabel.c: In function ‘OutputLine’:

rastertolabel.c:739: warning: pointer targets in assignment differ in signedness

rastertolabel.c:753: warning: pointer targets in assignment differ in signedness




FoFiType1C.cxx: In member function ‘void FoFiType1C::readFD(int, int, Type1CPrivateDict*)’:

FoFiType1C.cxx:1924: warning: ‘fontMatrix$0’ may be used uninitialized in this function

FoFiType1C.cxx:1924: warning: ‘fontMatrix$1’ may be used uninitialized in this function

FoFiType1C.cxx:1924: warning: ‘fontMatrix$2’ may be used uninitialized in this function

FoFiType1C.cxx:1924: warning: ‘fontMatrix$3’ may be used uninitialized in this function

FoFiType1C.cxx:1924: warning: ‘fontMatrix$4’ may be used uninitialized in this function

FoFiType1C.cxx:1924: warning: ‘fontMatrix$5’ may be used uninitialized in this function




dirsvc.c:1005: warning: implicit declaration of function ‘ldap_bind_s’

dirsvc.c: In function ‘cupsdStopBrowsing’:

dirsvc.c:1180: warning: implicit declaration of function ‘ldap_unbind’

dirsvc.c: In function ‘cupsdUpdateLDAPBrowse’:

dirsvc.c:1520: warning: implicit declaration of function ‘ldap_search_s’

dirsvc.c:1547: warning: implicit declaration of function ‘ldap_get_values’

dirsvc.c:1548: warning: assignment makes pointer from integer without a cast

dirsvc.c:1552: warning: implicit declaration of function ‘ldap_value_free’

dirsvc.c:1555: warning: assignment makes pointer from integer without a cast

dirsvc.c:1562: warning: assignment makes pointer from integer without a cast

dirsvc.c:1569: warning: assignment makes pointer from integer without a cast

dirsvc.c:1576: warning: assignment makes pointer from integer without a cast

dirsvc.c: In function ‘send_ldap_browse’:

dirsvc.c:2747: warning: implicit declaration of function ‘ldap_modify_s’

dirsvc.c:2769: warning: implicit declaration of function ‘ldap_add_s’




printers.c: In function ‘cupsdCreateCommonData’:

printers.c:559: warning: dereferencing type-punned pointer will break strict-aliasing rules

printers.c:563: warning: dereferencing type-punned pointer will break strict-aliasing rules

printers.c: In function ‘cupsdSetPrinterAttrs’:

printers.c:2050: warning: dereferencing type-punned pointer will break strict-aliasing rules