Eigene Programme - wie muss das Makefile aussehen?

@RalfFriedl

Der Fehler könnte die Ursache für den "Segmentation fault" sein.

Der "Segmentation Fault" kommt auch, wenn der Abschnitt mit dem output.log komplett auskommentiert ist und entsprechend diese Fehlermeldung nicht kommt.

@Jörg

Ich habe jetzt mal strace auf die FB gebracht. Das Ergebnis siehe unten. Wenn ich das richtig deute, wird als letztes vergeblich nach der Datei /etc/tiny_can/tiny_can.cfg gesucht.
Die scheint es nirgendwo zu geben. Ich habe leider auch noch nicht die Aufrufstelle gefunden.

Was müsste ich tun um - wie du vorgeschlagen hast - das Programm inkl. der libmhstcan.so selbst statisch zu bauen.

Zur Info habe ich auch mal das tiny_can Paket mit angehangen (Der Programmcode ist auf das Wesentlichste reduziert ...)
 

Anhänge

  • strace.txt
    10.6 KB · Aufrufe: 6
  • tiny_can-0.0.2.tgz
    47.7 KB · Aufrufe: 1
Es kann mit der fehlenden Datei zusammenhängen. Du könntest versuchen, gdb für die Box zu erstellen, damit bekommt man eher heraus, wo das Programm stehen bleibt. Oder Du bringst die fehlende Datei ins Image und probierst aus, ob es daran liegt.
 
Es kann mit der fehlenden Datei zusammenhängen. Du könntest versuchen, gdb für die Box zu erstellen, damit bekommt man eher heraus, wo das Programm stehen bleibt. Oder Du bringst die fehlende Datei ins Image und probierst aus, ob es daran liegt.

habe ähnliches Problem. Wie erstelle ich gdb bzw was heißt gdb ??

thx
 
gdb = "GNU Debugger", den müsstest du dann auf die Box bringen.

@0815eddi: Schau mal, wo "/etc/tiny_can/tiny_can.cfg" (bzw der Pfad dahin) eingstellt wird und ändere den auf /var/tmp/etc/tiny_can/tiny_can.cfg (oder so).

Jörg
 
gdb = "GNU Debugger", den müsstest du dann auf die Box bringen.

Jörg

Sorry wenn ich jetzt eine dumme Frage stelle .
Aber wie stell ich das an ?

Die Suchfunktion hat mich leider nicht vielweiter gebracht.
Unter "Compiler Options" habe ich "Build gdb for target" ausgewählt vor "make"

Jedoch lässt sich gdb nicht auf der Fritzbox aufrufen :
Code:
-sh: gdb: not found

:D
 
Der gdb wird nicht ins Image gepackt, sondern nur irgendwo im Build-System erstellt. Es ist auch nicht so einfach, gdb in wenigen Sätzen zu erklären.
 
Sollen wir ein Hinweis auf den Ort einfügen der nach dem Build angezeigt wird?

MfG Oliver
 
Zumindest ein Hinweis im Help-Screen (oder ein bool "Build gdb for target (Note: will not be included into the image)" ) wäre aus meiner Sicht sinnvoll/wichtig.

Jörg
 
nach
Code:
Build gdb for target
liegt aber gdb nicht imbuild Ordner , lediglich im source Ordner :confused:

Hat denn niemand mal eine kurze Anleitung für gdb newbies.

die gdu seiten die ich durch gegoogelt hab ,bringen mich in sachen freetz leider nicht weiter
 
Du findest die Infos dazu leider nur "indirekt" z.B. im Makefile gbd.mk.
Das Programm dürfte demnach unter "toolchain/target/target-utils/" zu finden sein.

Jörg
 
Zuletzt bearbeitet:
Hat denn niemand mal eine kurze Anleitung für gdb newbies.

die gdu seiten die ich durch gegoogelt hab ,bringen mich in sachen freetz leider nicht weiter

An gdb ist nichts Freetz spezifisches. Wenn noch niemand eine kurze Anleitung für gdb geschrieben hat, dann liegt es vermutlich daran, daß es ein umfangreiches Programm ist.

Den Pfad für gdb bei der Hilfe anzuzeigen halte ich auch für sinnvoll, dann muß man nicht immer danach suchen.
 
und wie kann ich jetzt auf der fritzbox von einer binary mit gdb ein backtrace erstellen ?;-)
 
Code:
gdb [B]programm[/B]
run [B]parameter[/B]
where
Wenn möglich, solltest Du dem Programm beibringen, daß es nicht in den Hintergrund geht. Viele Server-Programme haben dazu eine Option.

Wenn Du beim Erstellen des Programms und der Libraries die Option -g verwenden kannst und das Strippen verhinderst, ist die Ausgabe noch informativer.
 
Ich bin in den letzten 2 Wochen leider nicht dazu gekommen, an meinem "Projekt" weiter zu arbeiten. Jetzt habe ich dann aber mal versucht, den Vorschlag mit gdb aufzugreifen und habe dann im "menuconfig" unter "Advanced options --> compiler options" "build gdb for target" markiert.


[Edit frank_m24: Sinnfreies Vollzitat gelöscht, siehe Forumregeln.]

Leider finde ich nach einem "make" nichts unter "toolchain/target/target-utils/" Mache ich noch was falsch?
 
Hast du es mal mit "make gdb" versucht?

MfG Oliver
 

Statistik des Forums

Themen
246,295
Beiträge
2,249,584
Mitglieder
373,893
Neuestes Mitglied
Kukkatto
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.