Gibt es einen CUPS unter 14MB
-
- Beiträge: 15
- Registriert: 03.11.2006 13:32:33
Gibt es einen CUPS unter 14MB
HI
Gibt es so einen CUBS unter 14 MB, hab nur soviel in meinem embedded system frei, brauch nur ein paar filter und die ansteuerung über usb für einen drucker. gibt es da ni ne möglichkeit, den cups so klein wie nur möglich zu halten?
oder gibt es schon so ne "abgespeckte" version?
kenn mich leider auch nicht so gut mit den cups aus, weis nur das es ihn gibt und ich ihn verwende und konfiguriere.
Hoffe ihr könnt mir helfen oder nen tipp geben,
danke schon mal im vorraus.
Gibt es so einen CUBS unter 14 MB, hab nur soviel in meinem embedded system frei, brauch nur ein paar filter und die ansteuerung über usb für einen drucker. gibt es da ni ne möglichkeit, den cups so klein wie nur möglich zu halten?
oder gibt es schon so ne "abgespeckte" version?
kenn mich leider auch nicht so gut mit den cups aus, weis nur das es ihn gibt und ich ihn verwende und konfiguriere.
Hoffe ihr könnt mir helfen oder nen tipp geben,
danke schon mal im vorraus.
hi,
je nachdem, was du mit welcher Anwendung drucken willst, brauchst du
CUPS evt. garnicht. Im Extremfall versteht der Drucker PCL oder sogar
PS und die Anwendung ist selbstgebaut. Dann reicht was in der Art:
Etwas mehr, naemlich Warteschlangen und Filter bietet das Paket "lpr".
Das braucht weniger als 1MB.
Erst wenn du Sachen wie Duplex-Druck oder Wasserzeichen per GUI
einstellen musst, lohnt sich CUPS. Aber da hab' ich keinen Plan.
je nachdem, was du mit welcher Anwendung drucken willst, brauchst du
CUPS evt. garnicht. Im Extremfall versteht der Drucker PCL oder sogar
PS und die Anwendung ist selbstgebaut. Dann reicht was in der Art:
Code: Alles auswählen
modprobe usblp
echo "Hello, World" > /dev/usb/lp0
echo "Hello, World" | printer_filter > /dev/usb/lp0
Das braucht weniger als 1MB.
Erst wenn du Sachen wie Duplex-Druck oder Wasserzeichen per GUI
einstellen musst, lohnt sich CUPS. Aber da hab' ich keinen Plan.
Beware of programmers who carry screwdrivers.
-
- Beiträge: 15
- Registriert: 03.11.2006 13:32:33
Ja, da brauchst du für den allerersten Versuch nichtmal das lpr-Paket.
Für Hello World in Postscript sollte sowas reichen:
Wenn das nicht geht, stimmt was nicht mit den USB-Modulen im Kernel
oder das /dev ist evt. ein anderes. "Druckertreiber" oder Filter sind für
Postscript-Drucker unnötig, eher störend.
Der Nachteil bei dieser sehr direkten Ausgabe ist, dass die Anwendung
auf den Drucker warten muss, wenn z.B. das Papier alle ist. Je nach
Anwendung ist das akzeptabel oder sogar erwünscht, z.B. wenn eine
Kasse eine Rechnung drucken soll. Mit lpr werden die Daten nicht direkt
zum Drucker geschickt, sondern erstmal auf der Platte gespeichert.
Der lpd-Daemon sorgt dann für die eigentliche Ausgabe, mehr nicht.
Aus einem eigenen Programm heraus solltest du unbedingt Postscript
ausgeben. Selbst wenn da mal ein Drucker dranhängt, der kein PS
kann, ist die Konvertierung von PS in ein anderes Format immer noch
einfacher als umgekehrt. Unix-Programme geben traditionell PS aus.
Wenn man sich erstmal an die umgekehrte polnische Schreibweise
gewöhnt hat, ist PS wirklich einfach. Farbe, Tabellen, Duplex-Druck,
Hintergrund-Grafik usw. ist alles kein Problem. Für eigene Versuche
kann man sich die Datei erstmal in "gv" am Bildschirm ansehen.
Ein fertiges Programm um ASCII-Text in PS zu wandeln ist "enscript"
oder evt. "a2ps".
Edit: "Times" in "Times-Roman" geändert -- mal wieder typisch:
von wegen "geht immer" - geht nichtmal beim ersten Mal
Für Hello World in Postscript sollte sowas reichen:
Code: Alles auswählen
%!PS
% hello.ps
72 25.4 div dup scale % ich mag Koordinaten in mm
20 270 moveto % oben in der Ecke, 20 mm Rand muss reichen
/Times-Roman findfont % oder Helvetica oder Courier geht immer
6.3 scalefont setfont % 6.3 mm Schriftgroesse
(Hello, World!) show % das macht schwarze Punkte
% auf eine virtuelle Seite
showpage % jetzt wird wirklich gedruckt
Code: Alles auswählen
cat hello.ps > /dev/usb/lp0
oder das /dev ist evt. ein anderes. "Druckertreiber" oder Filter sind für
Postscript-Drucker unnötig, eher störend.
Der Nachteil bei dieser sehr direkten Ausgabe ist, dass die Anwendung
auf den Drucker warten muss, wenn z.B. das Papier alle ist. Je nach
Anwendung ist das akzeptabel oder sogar erwünscht, z.B. wenn eine
Kasse eine Rechnung drucken soll. Mit lpr werden die Daten nicht direkt
zum Drucker geschickt, sondern erstmal auf der Platte gespeichert.
Der lpd-Daemon sorgt dann für die eigentliche Ausgabe, mehr nicht.
Aus einem eigenen Programm heraus solltest du unbedingt Postscript
ausgeben. Selbst wenn da mal ein Drucker dranhängt, der kein PS
kann, ist die Konvertierung von PS in ein anderes Format immer noch
einfacher als umgekehrt. Unix-Programme geben traditionell PS aus.
Wenn man sich erstmal an die umgekehrte polnische Schreibweise
gewöhnt hat, ist PS wirklich einfach. Farbe, Tabellen, Duplex-Druck,
Hintergrund-Grafik usw. ist alles kein Problem. Für eigene Versuche
kann man sich die Datei erstmal in "gv" am Bildschirm ansehen.
Ein fertiges Programm um ASCII-Text in PS zu wandeln ist "enscript"
oder evt. "a2ps".
Edit: "Times" in "Times-Roman" geändert -- mal wieder typisch:
von wegen "geht immer" - geht nichtmal beim ersten Mal

Zuletzt geändert von cosmac am 14.11.2006 22:30:52, insgesamt 1-mal geändert.
Beware of programmers who carry screwdrivers.
-
- Beiträge: 15
- Registriert: 03.11.2006 13:32:33
Ich kann dir nur immerwieder danken
hab es vorhins mal ausprobiert und es klappt wunderbar.
selbst das umwandeln klappt.
Also für den anfang ist das echt gut, werd es aber drotzdem noch mit den filtern zb lpr probieren, weil jetzt braucht er viel zu lange vom befehl bis hin wo es ausgedruckt wird.(45sec ungefähr oder länger ;-p) und das ist noch nicht ganz optimal.
Danke nochmal
wenn du noch weitere tipps hast, immerzu
kann hilfe immer gebrauchen
hab es vorhins mal ausprobiert und es klappt wunderbar.
selbst das umwandeln klappt.
Also für den anfang ist das echt gut, werd es aber drotzdem noch mit den filtern zb lpr probieren, weil jetzt braucht er viel zu lange vom befehl bis hin wo es ausgedruckt wird.(45sec ungefähr oder länger ;-p) und das ist noch nicht ganz optimal.
Danke nochmal
wenn du noch weitere tipps hast, immerzu
kann hilfe immer gebrauchen
die 45 Sekunden könnten ein Time-Out sein, weil der Drucker auf
ein End-Of-.File wartet und keins bekommt. Also kaufen wir eins
Angenommen, hello.ps ist die Demo-Datei von oben:Wenn das nicht hilft, wird's spannend.
Was ich vorhin schon schreiben wollte:
Postscript Language Reference Manual - das Original (Vorsicht: 7.4MB)
Dann hätte ich auch mal eine Frage: warum sagst du "Filter" zu lpr? bzw.
was verstehst du unter Filter? Reden wir evt. aneinander vorbei?
ein End-Of-.File wartet und keins bekommt. Also kaufen wir eins

Angenommen, hello.ps ist die Demo-Datei von oben:
Code: Alles auswählen
echo -n -e '\004' >> hello.ps
cat hello.ps > /dev/usb/lp0
Was ich vorhin schon schreiben wollte:
Postscript Language Reference Manual - das Original (Vorsicht: 7.4MB)
Dann hätte ich auch mal eine Frage: warum sagst du "Filter" zu lpr? bzw.
was verstehst du unter Filter? Reden wir evt. aneinander vorbei?
Beware of programmers who carry screwdrivers.
-
- Beiträge: 15
- Registriert: 03.11.2006 13:32:33
Morgen
Ja es hat geklappt
was hat das '\004' bedeutet und wo kann ich das nachlesen (am besten noch in deutsch
) oder sind das einfach bloß die rechte?
achso hab gestern Courier als schrift genommen, deshalb hat es auch geklappt.
ja ich glaube wir haben aneinander vorbeigeredet und ich hab was geschrieben und was anderes gemeint,
hab gerade erfahren das ich es doch über cups regeln soll, stellt sich bloß die frage was ich alles brauche?
reicht es wenn ich cupsys client drauf mach, weil einen server brauch ich ja nun direkt nicht oder sind beide zwingend notwendig???
oder kannst du mir verraten wie ich den cups auf meine bedürfnisse anpassen kann, denn wenn ich ihn installiere hab ich alles, will aber nur ein teil, um ihn so klein wie möglich zu halten.
ich denk mal das jetzt vorerst über den drucker am usb port gedruckt werden soll und später über einen netzwerkdrucker
ich hoffe du kannst mir wieder helfen
Ja es hat geklappt
was hat das '\004' bedeutet und wo kann ich das nachlesen (am besten noch in deutsch

achso hab gestern Courier als schrift genommen, deshalb hat es auch geklappt.

ja ich glaube wir haben aneinander vorbeigeredet und ich hab was geschrieben und was anderes gemeint,

hab gerade erfahren das ich es doch über cups regeln soll, stellt sich bloß die frage was ich alles brauche?
reicht es wenn ich cupsys client drauf mach, weil einen server brauch ich ja nun direkt nicht oder sind beide zwingend notwendig???
oder kannst du mir verraten wie ich den cups auf meine bedürfnisse anpassen kann, denn wenn ich ihn installiere hab ich alles, will aber nur ein teil, um ihn so klein wie möglich zu halten.
ich denk mal das jetzt vorerst über den drucker am usb port gedruckt werden soll und später über einen netzwerkdrucker
ich hoffe du kannst mir wieder helfen
Wenn es um mehr geht, als reines Drucken einzelner Seiten, braucht
man Druckjobs, z.B. zum Sortieren oder zur Abrechnung. Das Ende
eines Druckjobs wird durch ein Steuerzeichen gekennzeichnet, genau
wie z.B. das Ende einer Zeile.
Solche Steuerzeichen kann man schlecht eintippen, noch dazu auf dem
Umweg über ein Forum. Deshalb diese Konstruktion mit echo und 004.
Mit Rechten hat das nichts zu tun, allerdings nimmt man in beiden Fällen
gern die oktale Schreibweise mit Null am Anfang - daher die Ähnlichkeit.
Andere Schreibweisen wären: CTRL-D, ^D, <EOT>, 0x04...
Streng genommen gehört das Zeichen auch nicht in die Datei, also so:
Mit CUPS selbst kann ich dir leider nicht weiterhelfen, wie man evt. schon
gemerkt hat, brauche ich sowas nicht.
"Netzwerkdrucker" ist auch kein
Argument, da reicht immer noch lpr - das ist sowieso Netzwerk-basiert.
Und auch mit Netzwerkdruckern ginge es ganz ohne das:
man Druckjobs, z.B. zum Sortieren oder zur Abrechnung. Das Ende
eines Druckjobs wird durch ein Steuerzeichen gekennzeichnet, genau
wie z.B. das Ende einer Zeile.
Solche Steuerzeichen kann man schlecht eintippen, noch dazu auf dem
Umweg über ein Forum. Deshalb diese Konstruktion mit echo und 004.
Mit Rechten hat das nichts zu tun, allerdings nimmt man in beiden Fällen
gern die oktale Schreibweise mit Null am Anfang - daher die Ähnlichkeit.
Andere Schreibweisen wären: CTRL-D, ^D, <EOT>, 0x04...
Streng genommen gehört das Zeichen auch nicht in die Datei, also so:
Code: Alles auswählen
cat hello.ps > /dev/usb/lp0
echo -n -e '/004' > /dev/usb/lp0
gemerkt hat, brauche ich sowas nicht.

Argument, da reicht immer noch lpr - das ist sowieso Netzwerk-basiert.
Und auch mit Netzwerkdruckern ginge es ganz ohne das:
Code: Alles auswählen
netcat < hello.ps drucker 9100
Beware of programmers who carry screwdrivers.
-
- Beiträge: 15
- Registriert: 03.11.2006 13:32:33
danke
gut erklärt
ich soll um jeden preis cups da drauf bringen.
hab aber gerade leichte probleme mit dieser BusyBox, da sind die befehle nicht so wie gerade gewohnt, naja kann man auch nicht sagen bin ja noch ein anfänger
.
kennst du dich da bissel aus?
den ich weiß nicht genau wie ich eine datei oder file editieren kann, sprich zB in die fstab was reinschreiben kann, denn es gibt keinen mc oder vi, zumindest find ich nicht den passenden befehl.
das einfachste geht mal wieder ni.
gut erklärt
ich soll um jeden preis cups da drauf bringen.
hab aber gerade leichte probleme mit dieser BusyBox, da sind die befehle nicht so wie gerade gewohnt, naja kann man auch nicht sagen bin ja noch ein anfänger

kennst du dich da bissel aus?
den ich weiß nicht genau wie ich eine datei oder file editieren kann, sprich zB in die fstab was reinschreiben kann, denn es gibt keinen mc oder vi, zumindest find ich nicht den passenden befehl.
das einfachste geht mal wieder ni.

also wieviel Platz CUPS braucht, bekommt man nicht leicht raus: wenn
ich die Paket-Groessen im Kopf zusammenzaehl, komm ich auf ca. 8MB,
auf meinem Etch haette aptitude 28MB installieren wollen...
Ein fetter Brocken mit 10MB ist "gs-esp" und der wird mit einem
Postscript-Drucker eigentlich nicht gebraucht.
Wenn dein Mini-System noch halbwegs normales Debian ist, ist der
Editor "nano" installiert. Ansonsten musst du nano oder die Mini-Version
von vim nachinstallieren. Die BusyBox selbst duerfte keinen eingebauten
Editor haben.
Noch was anderes: die Chancen, dass jemand antwortet, werden besser
wenn du nicht zu viele verschiedene Fragen in einen Thread packst
ich die Paket-Groessen im Kopf zusammenzaehl, komm ich auf ca. 8MB,
auf meinem Etch haette aptitude 28MB installieren wollen...
Ein fetter Brocken mit 10MB ist "gs-esp" und der wird mit einem
Postscript-Drucker eigentlich nicht gebraucht.
Wenn dein Mini-System noch halbwegs normales Debian ist, ist der
Editor "nano" installiert. Ansonsten musst du nano oder die Mini-Version
von vim nachinstallieren. Die BusyBox selbst duerfte keinen eingebauten
Editor haben.
Noch was anderes: die Chancen, dass jemand antwortet, werden besser
wenn du nicht zu viele verschiedene Fragen in einen Thread packst

Beware of programmers who carry screwdrivers.
-
- Beiträge: 15
- Registriert: 03.11.2006 13:32:33
ja ich weiß, ist blöd soviel unterschiedliche fragen zu nur einen thema oder thread zu stellen. aber es hat sich nun mal so ergeben und ich wollte auch nicht soviele neue themen reinstellen.
nano is nicht drauf, ist überhaupt kein editor drauf. wollte ja mittells usbstick paar packete draufbringen nur um die usb schnittstelle zu konfigurieren brauch ich nen editor, teufelskreis.
na mal sehen wie ich das hinbekomm, danach kümmere ich mich dann um den cups
nano is nicht drauf, ist überhaupt kein editor drauf. wollte ja mittells usbstick paar packete draufbringen nur um die usb schnittstelle zu konfigurieren brauch ich nen editor, teufelskreis.
na mal sehen wie ich das hinbekomm, danach kümmere ich mich dann um den cups

jedenfalls normale, halbwegs aktuelle Versionen.
Wenn es keinen Link /bin/vi -> /bin/busybox gibt, geht es evt. so:
Code: Alles auswählen
/bin/busybox sh
vi
Beware of programmers who carry screwdrivers.
-
- Beiträge: 15
- Registriert: 03.11.2006 13:32:33
also diese busybox hat kein vi
hat leider ni geklappt
ich versuch gerade mir über den TFTP server was zu ziehen aber dazu sollte ich ihn erst in meinen pc einrichten. (mal kucken wie ich das hinbekomm, den das switch ist langsam voll.)
oder gibts ni ne ander möglichkeit mit nen befehl in eine datei zu schreiben, dazu muss es doch nen befehl geben.

hat leider ni geklappt
ich versuch gerade mir über den TFTP server was zu ziehen aber dazu sollte ich ihn erst in meinen pc einrichten. (mal kucken wie ich das hinbekomm, den das switch ist langsam voll.)
oder gibts ni ne ander möglichkeit mit nen befehl in eine datei zu schreiben, dazu muss es doch nen befehl geben.
wenn eine zusätzliche Zeile am Ende der Datei reicht: aber unbedingt mit 2 ">", sonst wird sie überschrieben.
Genauso kann man auch neue Dateien erzeugen.
Um eine Zeile zu löschen, könnte mandas entfernt alle Zeilen, die "foo bar" enthalten, also Obacht!
Aber der "ed"-Editor könnte wirklich dabei sein, der ist wirklich
klein. Oder notfalls "sed".
Das wird ja ein ziemlich extremes Teil, nicht mal einen vi dabei,
aber dafür cups...
Code: Alles auswählen
echo "foo bar bla" >> datei
Genauso kann man auch neue Dateien erzeugen.
Um eine Zeile zu löschen, könnte man
Code: Alles auswählen
grep -v "foo bar" alte_datei > neue_datei
Aber der "ed"-Editor könnte wirklich dabei sein, der ist wirklich
klein. Oder notfalls "sed".
Das wird ja ein ziemlich extremes Teil, nicht mal einen vi dabei,
aber dafür cups...

Beware of programmers who carry screwdrivers.
-
- Beiträge: 15
- Registriert: 03.11.2006 13:32:33
also mit
klappts auch, etwas neues hinein zuschreiben, auch hier muss man darauf achen das 2> zu setzen sind, sonst wird die datei überschrieben
hab gerade gesehen das er sed besitzt und les mich gerade etwas ein, aber ist schon umständlich, da kann ich auch glei ne zeile löschen und dann ne neue ranhängen. naja.
Ich bekomm wenn ich mein usb mounten will immer "Block device required", was bedeutet das?
und wenn ich ein usbstick reinsteck, leuchtet der auch nicht.
Code: Alles auswählen
cat >> datei
hab gerade gesehen das er sed besitzt und les mich gerade etwas ein, aber ist schon umständlich, da kann ich auch glei ne zeile löschen und dann ne neue ranhängen. naja.
Ich bekomm wenn ich mein usb mounten will immer "Block device required", was bedeutet das?
und wenn ich ein usbstick reinsteck, leuchtet der auch nicht.
- Mr_Snede
- Beiträge: 2323
- Registriert: 08.07.2003 13:48:49
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Ruhrpott
Wenn es noch darum geht, cups kleiner zu bekommen kannst du beim kompilieren mal schauen, ob du Otionen weg lassen kannst.
ZB sind bei debian oftmals Debug Optionen alle eingeschaltet. Das macht beim icewm zB einen bemerkbaren Unterschied.
Du kannst auch gegen dietlibc kompilieren anstelle von glibc
-- > http://www.linux-magazin.de/Artikel/aus ... tlibc.html
ZB sind bei debian oftmals Debug Optionen alle eingeschaltet. Das macht beim icewm zB einen bemerkbaren Unterschied.
Du kannst auch gegen dietlibc kompilieren anstelle von glibc
-- > http://www.linux-magazin.de/Artikel/aus ... tlibc.html
Software Finder - Software in Kategorien Debian ohne Ballast - Tipps für ein schlankes Debian
-
- Beiträge: 15
- Registriert: 03.11.2006 13:32:33
-
- Beiträge: 15
- Registriert: 03.11.2006 13:32:33