2008/04 ぐらいの推奨パッチ(おそらく 127127-11)をあてると, lp システムのパッチの不具合なのか,実装が変わったのか CDE からうまくプリントアウトできないプリンタがでてくる.
詳しく調べてみると, プリンタ名が hoge-1 や fuga-3 といった感じで ハイフン(-)の後に数字がついている名前だと そのハイフンから後ろの部分を プリンタ名ではなくてジョブ番号と認識するのか
lpstat hoge-1
がうまく動かない.
% lpstat fx401-1 Failed to contact service for fx401: not-found
そのため,CDE のアプリケーションが内部的に利用している dtlp が hoge-1 といった名前のプリンタを利用しようとすると そんなプリンタは存在しないといわれる.
仕方ないので /usr/dt/bin/dtlp を改造.
diff -c dtlp.org dtlp *** dtlp.org 2004-12-18 04:52:02.000000000 +0900 --- dtlp 2008-09-02 12:37:13.713230000 +0900 *************** *** 243,249 **** DEVICE_VAL=${DEVICE_VAL%%+( )} # Check for printer ! lpstat $DEVICE_VAL 2> /dev/null if [ $? != 0 ] then XmCreateInformationDialog INFORMATION $TOPLEVEL information --- 243,249 ---- DEVICE_VAL=${DEVICE_VAL%%+( )} # Check for printer ! lpstat -S $DEVICE_VAL 2> /dev/null if [ $? != 0 ] then XmCreateInformationDialog INFORMATION $TOPLEVEL information