Capio auf der FritzBox

Hi und willkommen im Forum,

das kommt mir bekannt vor. Habe nun das hier dazu gefunden. Das passt auch irgendwie:
Code:
--- capi20/capi20.h.old	2007-11-28 06:07:35.000000000 +0000
+++ capi20/capi20.h	2007-11-28 06:07:58.000000000 +0000
@@ -20,6 +20,7 @@
 #ifndef __CAPI20_H__
 #define __CAPI20_H__
 
+#include <stddef.h>
 #include <sys/time.h>
 
 #ifdef __cplusplus
Der Source steht unter GPL und ist auch von libcapi20 abgeleitet. Also kein Problem.
 
danke für die schnelle Antwort!
hab #include <stddef.h> eingefügt und es klappt.

sooo, capiinfo sieht gut aus

kann mir jetzt noch einer sagen, wo ich ne spandsp 0.4 oder 0.5 herbekomme?
in den Paketquellen von Ubuntu Hardy ist nur eine spandsp-0.0.2 drin:mad:

0.5 soll ja nicht der Renner sein und Probleme machen, wie hier beschrieben wurde...

was ist jetzt eigtl. mit CapiSpFax? ist das jetzt =capifax-0.3.tar.gz aus dem Wiki oder ist letzteres eine angepasste Alternative, die dem SpFax vorzuziehen ist??

ich kenn mich damit nicht wirklich aus und frag lieber nochmal genauer nach, nicht dass ich da was verwechsel...

ich will am Ende auf die Cups Lösung hinaus, also müsste doch
Code:
 Required:
   - libspandsp (v0.0.4 irgendwas.. -pre)
   - libcapi20 aus dem Wiki
ausreichen oder?? dann capifax aus dem Wiki Eintrag und ffgtk2 hinterherschieben, richtig:confused:

Viele Grüße,
Groening

/EDIT:
nur nebenbei:
kann man eigtl nach der Installation von CapiFax mit Hylafax oder ähnlichem weitermachen? glaube mich erinnern zu können, dass es sogar Wege gab in OpenOffice bei existierendem Hylafax nen Software Faxgerät einzustellen...

Cups ist natürlich flexibler einsetzbar..
 
Zuletzt bearbeitet:
noch ein Nachtrag zu der Sache, ich habe jetzt nochmal das Paket

libspandsp3 (0.0.4pre16-1) installiert, Ergebnis:
Code:
/usr/lib/libspandsp.so.0.0.2
/usr/lib/libspandsp.so.0

beim letzten Versuch kamen massive Fehlermeldungen vom CapiFax- make :(
Daher hab ich die zugehörige libspandsp-dev mal zusätzlich installiert!!!

und siehe da, make vom CapiFax sieht schon besser aus:
Code:
/capifax-0.3/src# make
gcc   -Os -I. -D_GNU_SOURCE -c libcapifax.c -o libcapifax.o
libcapifax.c: In Funktion »spandsp_init«:
libcapifax.c:929: Warnung: Übergabe des Arguments 2 von »t30_set_phase_b_handler« von inkompatiblem Zeigertyp
libcapifax.c:930: Warnung: Übergabe des Arguments 2 von »t30_set_phase_d_handler« von inkompatiblem Zeigertyp
gcc   -Os -I. -D_GNU_SOURCE -c alaw_ulaw.c -o alaw_ulaw.o
gcc -L./ -shared -Wl,-soname -Wl,libcapifax -o libcapifax.so libcapifax.o alaw_ulaw.o -lcapi20 -lm -lspandsp -ltiff -Wl,-Bdynamic
ar rcs libcapifax.a libcapifax.o alaw_ulaw.o
strip libcapifax.so
gcc   -Os -I. -D_GNU_SOURCE -c capifax.c -o capifax.o
gcc -I./ -L./ capifax.o -o capifax -lcapi20 -lm -lspandsp -ltiff -Wl,-Bstatic -lcapifax -Wl,-Bdynamic
.//libcapifax.a(libcapifax.o): In function `spandsp_init':
libcapifax.c:(.text+0xad7): undefined reference to `t30_set_tx_ident'
libcapifax.c:(.text+0xaeb): undefined reference to `t30_set_tx_page_header_info'
collect2: ld gab 1 als Ende-Status zurück
make: *** [capifax] Fehler 1

ich traue mich nicht wirklich "make install" einzugeben, hinterher rennts so halb durch und dann steht alles...
(bin kein Freund von selbstkompiliertem / installiertem Zeugs - es ist so schön ungefährlich bei .deb Paketen, die man mit nem Häkchen wieder fix entfernen kann - hoffe ihr habt Verständnis für meine Vorsicht - das is nen Produktivsystem, mal eben alles neu aufsetzen ist hier nicht drin!)

kann jemand mit
Code:
Warnung: Übergabe des Arguments 2 von »t30_set_phase_b_handler« von inkompatiblem Zeigertyp
bzw.
Code:
undefined reference to...
Meldungen was anfangen?
 
Callweaver und libcapi-2.0_fb?

Ich weiß nicht, ob meine Frage in diesem Thread gut aufgehoben ist, aber trotzdem:

versucht sich schon jemand mit Callweaver und libcapi-2.0_fb?
Ich habe eben versucht, die aktuelle chan_capi-1.1.1 von Asterisk auf Callweaver zu portieren und gleichzeitig mit libcapi-2.0_fb zu testen, jedoch hängt die libcapi ab dem folgenden PUT, siehe strace:

-- CAPI/contr1 supports DTMF CAPI"..., 54
) = 54
-- CAPI/contr1 supports supplementary services CAPI"..., 72
) = 72
[pid 7202] write(1, "PUT CONTROLLER: 1 - CMD: 128, SU"..., 42PUT CONTROLLER: 1 - CMD: 128, SUBCMD: 128
) = 42
[pid 7202] send(7, "\200\22\0\22\0\0\0\200\200\1\0\1\0\0\0\3\0\3\0\0\0", 21, 0) = 21
[pid 7202] select(8, [7], NULL, NULL, {0, 1}) = 0 (Timeout)
dieses (Timeout) wiederholt sich dann beliebig oft.

Ist da schon jemand weiter als ich?

Gruß, JAT
 
@Groening: editiere mal libcapifax.h und ändere "#define SPANDSP_VERSION" von 5 nach 4.

@bodega: ich nutze hier auch die spandsp 0.0.4, vielleicht liegt's daran. Ich habe mit einem anderen Fax gestestet, und da ging's. Nur war hier "Phase E: coding method T.6". Macht das den Unterschied aus?

Beste Grüße,
Whoopie
 
Zuletzt bearbeitet:
Danke Whoopie, oben der Kram is weg, bleibt noch folgendes:

Code:
/capifax-0.3/src# make
gcc -L./ -shared -Wl,-soname -Wl,libcapifax -o libcapifax.so libcapifax.o alaw_ulaw.o -lcapi20 -lm -lspandsp -ltiff -Wl,-Bdynamic
ar rcs libcapifax.a libcapifax.o alaw_ulaw.o
strip libcapifax.so
gcc -I./ -L./ capifax.o -o capifax -lcapi20 -lm -lspandsp -ltiff -Wl,-Bstatic -lcapifax -Wl,-Bdynamic
.//libcapifax.a(libcapifax.o): In function `spandsp_init':
[COLOR="Red"]libcapifax.c:(.text+0xad7): undefined reference to `t30_set_tx_ident'
libcapifax.c:(.text+0xaeb): undefined reference to `t30_set_tx_page_header_info'[/COLOR]
collect2: ld gab 1 als Ende-Status zurück
make: *** [capifax] Fehler 1

hab die libcapifax.c mal aufgemacht, in Zeile 914-920 heissts da:
Code:
	#if SPANDSP_VERSION == 5
	if (LSI) t30_set_tx_ident (&fax->t30_state, LSI);
	if (LocalHeaderInfo) t30_set_tx_page_header_info (&fax->t30_state, LocalHeaderInfo);
	#else
	if (LSI) t30_set_local_ident (&fax->t30_state, LSI);
	if (LocalHeaderInfo) t30_set_header_info (&fax->t30_state, LocalHeaderInfo);
	#endif

ich bin jetzt kein Pro aber wenn der äußere IF-Block mit # auskommentiert wird, werden da evtl. versucht Dinge zu setzen, die die 0.0.4 nicht hergibt?
hab spaßeshalber den Block wieder rein genommen und make läuft durch, ich kann aber nicht einschätzen, ob das was make tut fürs faxen ausreicht oder allenfalls für imaginäre Luftpost^^:
Code:
/capifax-0.3/src# make
gcc   -Os -I. -D_GNU_SOURCE -c libcapifax.c -o libcapifax.o
gcc -L./ -shared -Wl,-soname -Wl,libcapifax -o libcapifax.so libcapifax.o alaw_ulaw.o -lcapi20 -lm -lspandsp -ltiff -Wl,-Bdynamic
ar rcs libcapifax.a libcapifax.o alaw_ulaw.o
strip libcapifax.so
gcc -I./ -L./ capifax.o -o capifax -lcapi20 -lm -lspandsp -ltiff -Wl,-Bstatic -lcapifax -Wl,-Bdynamic
strip capifax

kann ich bitte vom 'nem Spezi ein JO / DOH haben, bevor ich mit make install weitermache?
BTW: es gibt noch einige andere Stellen mit auskommentierten IF Blöcken von "SPANDSP_VERSION == 5"...
da habe ich bisher aber die Finger von gelassen, da make ja auch so durchläuft

Viele Grüße,

Groening
 
Zuletzt bearbeitet:
Dieses #if #else #endif sind sogenannte Präprozessordefinitionen, die man auch als CFLAG angeben kann, solange sie nicht im Code fest hinterlegt sind. Nicht zu verwechseln mit Kommentaren in Bash-Skripts.

z.B. #define SPANDSP_VERSION 5 aktiviert den einen Code-Teil, #define SPANDSP_VERSION 4 den anderen. Es gibt Entwickler, die legen nicht so viel Wert auf Abwärtskompatibilität, was ich sehr schade finde. Über das #define kannst du das Programm aber mit einer anderen spandsp-Version erzeugen.

Groening schrieb:
(bin kein Freund von selbstkompiliertem / installiertem Zeugs - es ist so schön ungefährlich bei .deb Paketen, die man mit nem Häkchen wieder fix entfernen kann - hoffe ihr habt Verständnis für meine Vorsicht - das is nen Produktivsystem, mal eben alles neu aufsetzen ist hier nicht drin!)
Vorsicht ist die Mutter der Porzellankiste. Stichwort: "Abwärtskompatibilität". Mit den debian Packages ist man da aus dem Schneider. Die Abhängigkeiten von capifax liegen bei libtiff-3.8.2, libspandsp 4 oder 5 und libcapi20. Sollte eines dieser Libs von anderen Anwendung benötigt werden, ist Vorsicht geboten. Die Verantwortung kann dir dabei aber keiner abnehmen.

Groening schrieb:
kann ich bitte vom 'nem Spezi ein JO / DOH haben, bevor ich mit make install weitermache?
capifax liegt nach dem Kompilieren im src-Verzeichnis und die Lib ist statisch eingebunden. Du könntest es auch testweise von dort ausführen (ohne make install). Kompilierung von libcapi20 und spandsp ist da schon etwas Kritischer, aber das scheint ja hinter uns zu liegen ;)

Whoopie schrieb:
ich nutze hier auch die spandsp 0.0.4, vielleicht liegt's daran. Ich habe mit einem anderen Fax gestestet, und da ging's. Nur war hier "Phase E: coding method T.6". Macht das den Unterschied aus?
Das könnte eventuell sein. Vielleicht hilft es, die Encoding Method einfach dazuzupacken:
Code:
...
[COLOR="Red"]	fax->t30_state.supported_compressions |= T30_SUPPORT_T4_1D_COMPRESSION;[/COLOR]
	fax->t30_state.supported_compressions |= T30_SUPPORT_T4_2D_COMPRESSION;
	fax->t30_state.supported_compressions |= T30_SUPPORT_NO_COMPRESSION;
...
 
Zuletzt bearbeitet:
"Du bist zu dicht! - bin fast da....."

sooo, ich habs mal installiert, scheint auch vielversprechend zu laufen, LED auf der FritzBox blitzt auf, es scheint regen Datenverkehr zu geben und am Ende gibts nen Fehler...

Logfile anbei

Irgendwelche Vorschläge?

@buzz: ich krieg dein ffgtk2 nicht installiert - beim make hagelt es Fehler, mir scheinen ohne Ende Packages für gtk zu fehlen (wahrscheinlich -dev) dazu aber morgen mehr..

Viele Grüße und nochmals Danke an alle Entwickler - so nah war ich dem Spielchen noch nie!!

[P.S. lasst euch von der "3" im Progaufruf in der Log nicht beirren, das is ein cp-Fehler]
 

Anhänge

  • fax.txt
    27 KB · Aufrufe: 11
@Groening:
-loglevel 1 anhängen hätte nicht geschadet. Man sieht nicht, was spandsp macht. Die libcapi20 funktioniert aber, anhand des Logs zu urteilen.

@Whoopie:
Es liegt nicht an der Kompression, wie ich festgestellt habe. Hatte jetzt unter Windows so ein ähnliches Problem: Senden funktioniert nicht, bleibt hängen --> Unexpected Message, Empfang funktioniert aber. Wenn ich spandsp-v5 ohne Floating Point kompiliere, funktioniert Senden und Empfangen. Kannst du das bei dir testen?
 
Hi bodega!
Danke für den Hinweis, ich war davon ausgegangen, dass loglevel 3 inklusive der Meldungen von level 1 und level2 ist!

Es stellte sich heraus, dass es keine gute Idee ist, nen .ps File mit gimp in ein tiff umzuwandeln, weil die Auflösung dann zu hoch für Faxe ist!

Mit einer ghostscript erstellten Datei hat es dann funktioniert! -War zwar nur ein einseitiges Schwarzweiß Fax, aber immerhin - mehr als ich zu hoffen gewagt habe. Weitere Tests folgen demnächst.

Die Log wirft allerdings zweimal den Fehler "sched_setscheduler error (-1)!"

die Log (level1) sieht im Ganzen dann so aus:
Code:
bla@blup:~/Desktop$ capifax -send ~/Desktop/fax.tiff 1 xxx yyy  -rate 14400 -ident "(+49) xxx" -header "zzz" -loglevel 1 > log.txt

capifax v0.3
--------------------------------------------------------------
[libcapifax] 09.08.2008 14:39:14 - capifax_init(1, 1)
[libcapifax] 09.08.2008 14:39:14 - libcapifax v0.3 initialized!
[libcapifax] 09.08.2008 14:39:14 - capifax_send("/home/bla/Desktop/fax.tiff", 3, 1, "xxx", "yyy", "(+49) xxx", "zzz")
[COLOR="Red"][libcapifax] 09.08.2008 14:39:14 - sched_setscheduler error (-1)![/COLOR]
[libcapifax] 09.08.2008 14:39:14 - New thread policy=1, priority=98!
[libcapifax] 09.08.2008 14:39:14 - CONNECT_REQ - xxx -> yyy
[libcapifax] 09.08.2008 14:39:22 - Phase B handler (0x80) DIS
[libcapifax] 09.08.2008 14:39:22 - Phase B: bit rate 14400
[libcapifax] 09.08.2008 14:39:22 - Phase B: ECM on
[libcapifax] 09.08.2008 14:39:37 - Phase D handler (0x8C) MCF
[libcapifax] 09.08.2008 14:39:37 - Phase D: pages transferred 1
[libcapifax] 09.08.2008 14:39:37 - Phase D: image size 1728 x 2292
[libcapifax] 09.08.2008 14:39:37 - Phase D: bad rows 0
[libcapifax] 09.08.2008 14:39:37 - Phase D: longest bad row run 0
[libcapifax] 09.08.2008 14:39:37 - Phase D: image size 9302
[COLOR="Red"][libcapifax] 09.08.2008 14:39:39 - sched_setscheduler error (-1)![/COLOR]
[libcapifax] 09.08.2008 14:39:39 - New thread policy=1, priority=2!
[libcapifax] 09.08.2008 14:39:39 - capifax_close()

fehlt nur noch ffgtk...

btw: die Kompilierungsprobleme mit gtk mal außen vor und zu was generellem, was mir hier aufgefallen ist!
meine Frage ob capifax nun gleich CapiSpFax ist, wurde bisher nicht beantwortet, hab mir zusammengeremt, dass es das mal war und mich hats zwar verwirrt aber auf der anderen Seite kann es mir ja egal sein, capifax tut ja seinen Dienst.
- Sollte man meinen, ich hätte trotzdem gern ne Oberfläche und es gab jemanden, der fleißig daran gearbeitet hat!

seit capifax nicht mehr CapiSpFax ist, wurde die Arbeit von buzz2 quasi aus dem "Projekt" verdrängt, der Progaufruf im aktuellen main.c stimmt nicht mehr (zumindest soweit ich das beurteilen kann), die Parameter stimmen nicht mehr (weder Reihenfole, noch Anzahl)!! - alles in allem ziemlich unschön für den Entwickler möchte ich meinen... (ist mein persönlicher Eindruck)

Auch wenn ich das verstehen würde, hoffe ich nicht, dass sich buzz komplett zurückzieht, oder nur seinen Zweig weiterentwickelt - es ist um ihn jedenfalls seit ner Weile (Anfang Juli=Wechsel zu capifax?) recht ruhig geworden.
ich bin jedenfalls nicht in der Lage ein Frontend zu schreiben, geschweige denn die Arbeit fortzusetzen.

Und drei Schritte zurück zu CapiSpFax kann hier doch nicht Sinn der Sache sein, wenn sogar schon ein Wiki besteht - in dem interessanterweise mit keinem Wort auf die grafische Oberfläche von buzz verwiesen wird.
Ich hoffe ihr rauft euch im Sinne aller Nutzer / Konsolenfeinde wieder zusammen (GtkStatusIcon hin oder her).

@bodega: Seh ich das jetzt alles falsch oder musst du mir da zustimmen?

Viele Grüße,

Groening
 
Zuletzt bearbeitet:
Das siehst du falsch. Ich hatte nicht vor, ein Projekt zu "verdrängen".
Buzz und ich waren einer Meinung, den Code von CapiSpFax aufzuräumen. Das heißt: keine Mischung von C und C++ und man müsste eine Library haben, um den Umweg über die Konsole zu vermeiden. Zudem wollte ich hier nicht zwei unterschiedliche Projekte (CapiSpFax/capifax) pflegen. Das führt auch nur zur allgemeinen Verwirrung.

capifax arbeitet auch mit ffgtk zusammen. Der Programmname und die Parameter sind nur etwas umbenannt. Man müsste wahrscheinlich nur die Parameter im Sourcecode von ffgtk ändern. Das dürfte kein Problem sein.

Zum Wiki: ich gehe da nicht drauf ein, da ich ffgtk nicht getestet habe. Aber: ein Wiki darf JEDER bearbeiten.

Zum schedule_error: führst du das Programm als User aus? Könnte eventuell daran liegen, da das Programm die Prozess-Priorität ändern möchte. Die Prozess-Priorität wird erhöht, um Aussetzer während der Übertragung zu vermeiden. Es geht aber auch ohne.

EDIT:
ffgtk-2. Datei fritzfax.c:

Suchen:
Code:
snprintf( anStr, sizeof( anStr ),
		"/usr/bin/CapiSpFax -d %s -t %s.tif -l \"%s\" -c%d 2>>/tmp/fritzfax.log", str, pnFile, getSenderNumber(), getController() );

Ersetzen:
Code:
snprintf( anStr, sizeof( anStr ),
		"/usr/bin/capifax -loglevel 1 -send \"%s\" %d %s %s %s -ident \"%s\" 2>>/tmp/fritzfax.log", pnFile, getController(), "12345", str, getSenderNumber());
12345 ist die eigene MSN. Ungetestet!
 
Zuletzt bearbeitet:
ok, dann ist es also im Einklang aller Beteiligten ein unfertiger Wechsel von CapiSpFax nach capifax und kein Fork... klasse *freu*

Um das Thema entgültig abzuschließen und um sicher zu sein, dass ich das nicht missverstehe:
  • bei libcapi habt ihr den Namen gelassen, damit andere Anwendungen wie dtmfbox wie gewohnt drauf zugreifen können.
  • bei CapiSpFax baut ihr ne neue Lib mit neuem Namen (capifax), weil buzz noch vorhat die Lib direkt anzusprechen, und ffgtk dann eh geändert werden muss...
    sprich es geht nicht drum,
    Code:
    /usr/bin/CapiSpFax -d %s -t %s.tif -l \"%s\" -c%d 2>>/tmp/fritzfax.log
    durch sowas wie
    Code:
    /usr/bin/capifax %s %s %s -header"%s" -ident"%s"
    zu ersetzen!
    und CapiSpFax als Grundlage zu nehmen und neue Methoden einzubauen, is bullshit, weil 1. der Code verbuggt ist, 2. das mit dem C/C++ und 3. weil nen Abändern von CapiSpFax zu aufwändig wär

ok, dann hab ichs jetzt hoffentllich...

Das sollte auch kein Angriff werden - es schien mir nur zu nem Fork zu werden, weil selbst Version 0.4 (aktuell) immernoch auf CapiSpFax abzielt

Wegen dem Wiki: wenn eine passende Version von ffgtk raus ist bau ich den Hinweis und nen Link zum Server mit neuen Veröffentlichungen gern ein, viel mehr kann ich euch ja eh nicht als Hilfe anbieten und ich bin euch, um das nochmal zu betonen, für alles dankbar, was ihr da entwickelt!

Vorher und nach jetzigem Kenntnisstand geb ich dir aber recht es außen vor zu lassen, weil es noch inkompartibel ist.

Versteh mich nicht falsch, normalerweise würde ich auch davon ausgehen, dass ich da ran darf aber bei einem Wiki, in dem Sätze wie
Ich hatte diese ein wenig angepasst, damit man ...
oder
...möchte ich mich herzlich bei allen bedanken,...
läd für meine Begriffe nicht unbedingt zum "drinrumschreiben" ein!
Mit so Sätzen entsteht viel mehr der Eindruck, der Beitrag wäre eine 1-Mann-Show (um es überspitzt zu formulieren) und außerdem werde ich über das Anwenderdasein wohl nie hinauswachsen und es gibt durchaus Wikis, die zumindest Entwicklern vorbehalten bleiben sollen - aber Schwamm drüber!

wegen dem shedule_error: Ja, das Prog läuft als User - ich teste es demnächst dann auch mal als root, danke für den Hinweis. (kann man das mit dem Prioisieren zufällig auch per Parameter ändern? - ist dafür etwa das ecm da? sry aber mir sagt ecm gar nix)

Das wäre auch etwas, was man mit einem Satz im Wiki beschreiben könnte (kann ich auch gerne selbst einbauen, sobald du es mir verräst)

Wo wir gerade dabei sind, wie wäre es mit einem Link zu diesem Thread unter Quellen (bitte hab Nachsicht, ich bin hier erst ne Woche und weiss nicht ob das hier auch üblich ist - kenn das nur aus ubuntuusers)
Es gibt im Wiki zwar den Link auf eine Message von Dir innerhalb dieses Threads mit den Downloads aber ich fänd es schöner, wenn man zumindest nen Fingerzeig kriegt, wo man sich an wen wenden kann (aus Anwendersicht).

Viele Grüße und nichts für ungut,

Groening
 
Hey bodega,

dein Code könnte es fast treffen, mein Vorschlag zu Zeile 49 sieht so aus (wenn mans weiterhin über nen impliziten Progaufruf machen will):
Code:
	snprintf( anStr, sizeof( anStr ),
	"/usr/bin/capifax -send \"%s\" %d %s %s -loglevel 1 -ident "%s" -header \"%s\" 2>>/tmp/fritzfax.log", pnFile, getController(), getSenderNumber(), str, "(+49) 1234/56 78 90",getSenderName());

ich hab in der preferences.c die Methode getSenderName gefunden, was das Pendant zu -header sein sollte!
was mir hier fehlt ist eine Methode zum füllen von -ident bzw. [msn]
mir ist nicht klar, ob CapiSpFax die MSN oder die komplette Rufnummer als Parameter erwartete, daher kann ich nur raten, wofür buzz die Methode getSenderNumber() geschrieben hat!

Ich tippe mal auf die MSN, unter der versendet wird, was bedeuten würde, dass es für -ident noch gar keine GTK Eingabeaufforderung oder Methode zum Auslesen gibt!

Testen kann ich es leider auch nicht, mir scheinen jede Menge header Files zu fehlen:
Code:
fritzfax.h:14:18: Fehler: glib.h: No such file or directory
fritzfax.h:15:26: Fehler: glib/gprintf.h: No such file or directory
fritzfax.h:16:21: Fehler: gtk/gtk.h: No such file or directory
fritzfax.h:17:26: Fehler: gtk/gtklabel.h: No such file or directory
fritzfax.h:18:26: Fehler: gtk/gtkimage.h: No such file or directory
fritzfax.h:19:24: Fehler: gtk/gtkbox.h: No such file or directory
fritzfax.h:20:27: Fehler: gtk/gtkbutton.h: No such file or directory
fritzfax.h:21:26: Fehler: gtk/gtkentry.h: No such file or directory
fritzfax.h:23:25: Fehler: gtk/gtkhbox.h: No such file or directory
fritzfax.h:24:25: Fehler: gtk/gtkvbox.h: No such file or directory
fritzfax.h:25:25: Fehler: gtk/gtkbbox.h: No such file or directory
fritzfax.h:26:26: Fehler: gtk/gtkhbbox.h: No such file or directory
fritzfax.h:27:26: Fehler: gtk/gtkstock.h: No such file or directory
fritzfax.h:28:26: Fehler: gtk/gtktable.h: No such file or directory
fritzfax.h:29:35: Fehler: gtk/gtkscrolledwindow.h: No such file or directory
fritzfax.h:30:29: Fehler: gtk/gtktreeview.h: No such file or directory
fritzfax.h:31:25: Fehler: gtk/gtktree.h: No such file or directory
fritzfax.h:32:34: Fehler: gtk/gtktreeselection.h: No such file or directory
fritzfax.h:33:30: Fehler: gtk/gtktreemodel.h: No such file or directory
fritzfax.h:34:33: Fehler: gtk/gtkcellrenderer.h: No such file or directory
fritzfax.h:35:37: Fehler: gtk/gtkcellrenderertext.h: No such file or directory
fritzfax.h:36:29: Fehler: gtk/gtktooltips.h: No such file or directory
fritzfax.h:37:28: Fehler: gdk/gdkkeysyms.h: No such file or directory

(die Folgefehler lass ich mal weg, die führen zu nix und sind wahrscheinlich zu 70% nur Folgefehler)
 
Hi,

sieht so aus, als ob gtk2 (dev) fehlt. Das müsstest du nachinstallieren.

Vielleicht noch zur Info: habe hier ein neues Thema eröffnet, wo ich die Win32-Version von capifax abgelegt habe. Ich suche momentan einen alternativen Druckertreiber. Vielleicht hat jemand eine Idee?
 
Juhu, das wars - und ich depp such immer nach gtk2-dev, dabei heisst der Übeltäter libgtk2-dev :D

ich habe noch ein bisschen im Code gefrickelt - eigtl gar nicht so schwer:cool:
- getSenderNumber ist definitiv das Pendant zu -ident und nicht die MSN
- pnFile enthält den Dateinamen des Original, muss also noch mit .tif erweitert werden, sonst wird unter Umständen versucht, nen PDF zu faxen ;-)
- ich habe außerdem die Funktion getSenderName aufgespürt, welche für -header eingesetzt werden kann.

Der lauffähige Code sieht dann so aus:

Code:
	snprintf( anStr, sizeof( anStr ),
	"/usr/bin/capifax -send %s.tif %d %d %s -ident \"%s\" -header \"%s\" -rate 14400 -loglevel 1 >/tmp/fritzfax.log",	pnFile, getController(), [COLOR="Red"]xxx[/COLOR], pnNumber, getSenderNumber(),getSenderName());

es fuktioniert!
- allerdings bricht die Verbindung nicht ab, sondern wird gehalten, und gehalten und gehalten... musste das Prog jedesmal killen.
- weiteres Problem: das Logfile wird zwar angelegt, bleibt aber leer?! - dazu eine Frage: "... 2>> tmp.txt" - heisst das append ab Zeile 2? wusst ich noch gar nicht..

hier die Log (cp aus Konsole):

Code:
FritzFax Server by Jan-Michael Brummer
Running on port 9901
Print job received on socket
Want to start '/usr/bin/capifax -send /tmp/fax.test-Nd1hXK.tif 1 xxx yyy -ident "(+49) zzz / zzz" -header "ABC" -rate 14400 -loglevel 1 2>>/tmp/fritzfax.log'
capifax v0.3
--------------------------------------------------------------
[libcapifax] 09.08.2008 21:58:43 - capifax_init(1, 1)
[libcapifax] 09.08.2008 21:58:43 - libcapifax v0.3 initialized!
[libcapifax] 09.08.2008 21:58:43 - capifax_send("/tmp/fax.test-Nd1hXK.tif", 3, 1, "xxx", "yyy", "(+49) zzz / zzz", "ABC")
[libcapifax] 09.08.2008 21:58:43 - New thread policy=1, priority=98!
[libcapifax] 09.08.2008 21:58:43 - CONNECT_REQ - xxx -> yyy
[libcapifax] 09.08.2008 21:58:58 - Phase B handler (0x80) DIS
[libcapifax] 09.08.2008 21:58:58 - Phase B: bit rate 9600
[libcapifax] 09.08.2008 21:58:58 - Phase B: ECM on
[libcapifax] 09.08.2008 22:01:39 - Phase D handler (0x8C) MCF
[libcapifax] 09.08.2008 22:01:39 - Phase D: pages transferred 1
[libcapifax] 09.08.2008 22:01:39 - Phase D: image size 1728 x 2156
[libcapifax] 09.08.2008 22:01:39 - Phase D: bad rows 0
[libcapifax] 09.08.2008 22:01:39 - Phase D: longest bad row run 0
[libcapifax] 09.08.2008 22:01:39 - Phase D: image size 130865
[libcapifax] 09.08.2008 22:01:41 - Phase E handler (0x0) OK
[libcapifax] 09.08.2008 22:01:41 - Phase E: pages transferred 1
[libcapifax] 09.08.2008 22:01:41 - Phase E: image resolution 8031 x 7700
[libcapifax] 09.08.2008 22:01:41 - Phase E: compression type 1
[libcapifax] 09.08.2008 22:01:41 - Phase E: coding method T.4 1-D

Mehrseitige Faxe gehen auch!
 
Hoi,

steh grad bissel aufm schlauch, wo liegt da der fehler:

Code:
root@eddli:/home/penne/Desktop/libcapi20_fb-0.4/capiinfo/bin# ./capiinfo 
capi not installed - No such device or address (6)


root@eddli:/home/penne/Desktop/libcapi20_fb-0.4/capiinfo/bin# ldd capiinfo
	linux-gate.so.1 =>  (0xffffe000)
	libcapi20.so.3 => /usr/lib32/libcapi20.so.3 (0xf7ed2000)
	libc.so.6 => /lib32/libc.so.6 (0xf7d83000)
	/lib/ld-linux.so.2 (0xf7ef2000)
root@eddli:/home

root@eddli:/usr/lib32# ls -la *libcapi*
lrwxrwxrwx 1 root root    18 2008-07-18 22:20 libcapi20.so.3 -> libcapi20.so.3.0.4
-rw-r--r-- 1 root root 31184 2008-04-04 23:07 libcapi20.so.3.0.4
root@eddli:/usr/lib32# 


root@eddli:/usr/lib# ls -ls *libcapi*
120 -rw-r--r-- 1 root root 115084 2008-08-10 12:16 libcapi20.a
 12 -rw-r--r-- 1 root root  11696 2008-08-10 12:05 libcapi20dyn.a
  4 -rw-r--r-- 1 root root    823 2008-04-04 23:07 libcapi20.la
  0 lrwxrwxrwx 1 root root     18 2008-08-10 12:16 libcapi20.so -> libcapi20.so.3.0.4
  0 lrwxrwxrwx 1 root root     18 2008-08-10 12:16 libcapi20.so.3 -> libcapi20.so.3.0.4
 56 -rw-r--r-- 1 root root  49996 2008-08-10 12:16 libcapi20.so.3.0.4
#

//add nu gehts...lag am 64bit ubuntu, musste die andern von hand nach /usr/lib32 kopieren...
gruessle
 
Zuletzt bearbeitet:
Code:
penne@eddli:~/Desktop/ffgtk$ make
make -C src all
make[1]: Betrete Verzeichnis '/home/penne/Desktop/ffgtk/src'
gcc -o fritzfax main.o server.o address-dialog.o preferences.o address-add.o about-dialog.o `pkg-config --libs gtk+-2.0 glib-2.0 gthread-2.0`
/usr/bin/ld: i386 architecture of input file `main.o' is incompatible with i386:x86-64 output
/usr/bin/ld: i386 architecture of input file `server.o' is incompatible with i386:x86-64 output
/usr/bin/ld: i386 architecture of input file `address-dialog.o' is incompatible with i386:x86-64 output
/usr/bin/ld: i386 architecture of input file `preferences.o' is incompatible with i386:x86-64 output
/usr/bin/ld: i386 architecture of input file `address-add.o' is incompatible with i386:x86-64 output
/usr/bin/ld: i386 architecture of input file `about-dialog.o' is incompatible with i386:x86-64 output
collect2: ld gab 1 als Ende-Status zurück
make[1]: *** [all] Fehler 1
make[1]: Verlasse Verzeichnis '/home/penne/Desktop/ffgtk/src'
make: *** [all] Fehler 2
penne@eddli:~/Desktop/ffgtk$

hast Du eine Ahnung woran das liegt?

gruessle
 
Zuletzt bearbeitet:
die Datei makefile ist für i386 und nicht i686 ausgelegt!
ich kanns nicht testen, weil ich nur alte 32Bit Gurken habe ( und bisher immer nur hatte), aber teste mal das hier:
- Makefile sichern!
- ./configure (sollte dann ein Makefile für dein sys erstellen)
- make clean
- make

wenn das nicht besser aussieht, wirst du nicht drum rum kommen dir mit configure --help mehr Einblick zu verschaffen, es kann sein, dass du was per Parameter angeben musst

Viel Glück,
Groening
 
Moin zusammen,

ich freue mich sehr, dass ffgtk Anklang findet und es auch modifiziert worde ist. Jedoch bin ich etwas enttäuscht, dass man mich nicht per Email informiert hat und ohne mein Wissen eine neue Version veröffentlicht hat. Klar der Quellcode befindet sich unter der GPL, damit kann jeder nach belieben rumschreiben. Denke aber der Anstand erlaubt es entweder einen Patch für eine Version zu schreiben oder aber man forkt. Ich selber habe auch Änderungen am Quellcode vorgenommen, die ich in die neue Version einfließen lasse.

Sooo zum eigentlichen Thema :)
* Ich denke es wäre angebracht auch bei capifax einen configure-build aufzusetzen der dann nach der installierten Version auf spandsp sucht und entsprechend auswählt. Was meint ihr?

* Das öminöse "2>>" ist die Umleitung der stderr-Ausgabe.

* Zu dem x64 (nicht i686, das ist auch 32bit)-Fehler: Liegt vemutlich an einem Mix von falschen Annahmen von gcc und ld. Das Makefile an sich ist in Ordnung, verwende es ebenfalls hier auf meinen AMD64-Systemen. Jedoch kannst du meine neue Version testen, die könnte Abhilfe schaffen.

* Über einen Wiki-Eintrag zu ffgtk würde ich mich sehr freuen, da nicht nur mehr Leute die Software verwenden können, sondern vielmehr mehr Fehler gefunden werden können :)

Anbei nun die neue Version 0.4.1, die auch wieder auf meine Homepage kommt. Neben meinen Änderungen sind auch die Änderungen der "black-version 0.4.5" integriert.
 

Anhänge

  • ffgtk-0.4.1.tar.bz2
    275.9 KB · Aufrufe: 5
du solltest eigtl eine E-Mail erhalten haben!

//Edit:
hab grad nochmal nachgeschaut - die ging definitiv am 10.08.2008 19:45 an [email protected] (wie im Prog als Copyright angegeben) raus...

außerdem ist die "black" Version^^ ja extra so benannt worden, dass sie deiner Roadmap nicht in die quere kommt, sich für alle hier aber von deinem abhebt (um mit capifax genutzt zu werden) - und "Veröffentlichen", naja - bei dem was hier im Forum getrickst, geändert und ausprobiert wird kann man wohl kaum von einem offiziellen Release reden!
aber ok, von mir aus mach ich demnächst immer nen tag vor die version, es gäb trotzdem sicher bessere Möglichkeiten

wo wir gerade dabei sind - es wär vielleicht nicht schlecht bei sourceforge was aufzumachen, damit man nicht ständig nach Versionen hier im Thread suchen muss, auf deinen webserver kommst schließlich nur du ran...

jo Schwamm drüber, freut mich dass du es direkt übernommen hast :)
 
Zuletzt bearbeitet:
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.