Jump to content

[Erledigt][brickd] Protkollversion 2 *.i386.deb nicht auf 386/486 CPU einsetzbar


Recommended Posts

Edit: Originaltitel war: "[brickd] Version v2 laesst sich nicht starten. Mit v1 Version kein Problem."

 

Hallo zusammen,

 

hatte ich das nicht schon mehrmals gesagt, dass ich die Protokoll Version fuer keine gute Idee halte?  :(

 

Hier ein weiteres Problem:

Auf einem kleinen PC mit Debian 6.0.7 in aktuellem Zustand laesst der Brickd nicht starten.

 

/var/log/brickd sagt:
2013-04-16 23:08:19.432998 <I> <main_linux.c:383> Brick Daemon 2.0.4 started (daemonized)
2013-04-16 23:09:11.591176 <I> <main_linux.c:383> Brick Daemon 2.0.4 started (daemonized)
2013-04-16 23:09:21.784311 <I> <main_linux.c:383> Brick Daemon 2.0.4 started (daemonized)

 

Es sieht so aus als waere er gestartet. Ein "/etc/init.d/brickd status" sagt aber "brickd stopped" ... Merkwuerdig  >:(

 

Ein manueller Start bringt das:

 

# brickd --debug
2013-04-16 23:28:21.928855 <I> <main_linux.c:385> Brick Daemon 2.0.4 started
2013-04-16 23:28:21.931551 <D> <event.c:55> Initializing event subsystem
Ungültiger Maschinenbefehl

# brickd --debug # Mal eine "alte" Version 2.0.1 probiert
2013-04-16 23:36:47.939376 <I> <main_linux.c:315> Brick Daemon 2.0.1 started
2013-04-16 23:36:47.942613 <D> <event.c:55> Initializing event subsystem
Ungültiger Maschinenbefehl

 

Die Protokollversion v1 (1.0.9) lief einwandfrei und wurde mit "dpkg --purge brickd" deinstalliert.

 

Welche Angaben muss ich noch nachliefern, dass jemand hier helfen kann. Mein persoenlicher Tip: Compilerswitch.  ;)

 

Danke fuer die Unterstuetzung.

 

Der Loetkolben

Link to comment
Share on other sites

Hier die Installation vom brickd auf einem 2. Baugleichen PC leider ohne Brickstack.

 

# dpkg -i brickd-2.0.4_i386.deb
Vormals abgewähltes Paket brickd wird gewählt.
(Lese Datenbank ... 18765 Dateien und Verzeichnisse sind derzeit installiert.)
Entpacken von brickd (aus brickd-2.0.4_i386.deb) ...
brickd (2.0.4) wird eingerichtet ...
update-rc.d: using dependency based boot sequencing
Starting Brick Daemon: Starting /usr/bin/brickd...

# /etc/init.d/brickd status
Status of Brick Daemon: stopped

# brickd --debug
2013-04-17 00:51:28.473466 <I> <main_linux.c:385> Brick Daemon 2.0.4 started
2013-04-17 00:51:28.478345 <D> <event.c:55> Initializing event subsystem
Ungültiger Maschinenbefehl

 

Problem bleibt das gleiche aber man muss nicht 500km Telefonsupport machen.

 

Nachtrag: Am Debian "itself" liegt es nicht, da ich den brickd 2.0.4 auch auf einem anderen PC am laufen habe. Es muss mit der Hardwarearchitektur zusammenhaengen?!

 

Der Loetkolben

Link to comment
Share on other sites

Welche Archtektur haben die Maschinen? Vermutlich stinknormal x86 oder? (ich glaube unter Linux sagt dir das "arch")

 

Ansonsten wurde der neue Brickd in C(++?) geschrieben, um effizienter zu sein und besser auf kleinen Maschinen zu laufen. Das bedeutet aber auch, dass die Plattformunabhängigkeit plötzlich eingeschränkt ist. Hast du einen dieser apt-get-Befehle genutzt, um den brickd zu installieren:

http://www.tinkerforge.com/de/doc/Software/Brickd_Install_Linux.html#brickd-install-linux (etwas runterscrollen)

 

Falls ja: Hast du den richtigen genutzt?

Link to comment
Share on other sites

Das erste was mir gerade auffällt ist das brickd-*_i386.deb auf einem i686 Rechner compiliert wird und daher eigentlich i686 ist.

 

Kann es sein, dass du einen CPU < i686 hast?

 

Was gibt "uname -a" aus? Was gibt "gcc -Q -v" aus, falls du gcc installiert hast?

Link to comment
Share on other sites

Guten Morgen zusammen,

 

danke fuer die Unterstuetzung. :-)

 

Installiert habe ich mit "dpkg -i brickd-2.0.4_i386" und die Installation ist sauber durchgelaufen.

 

Kann es sein, dass du einen CPU < i686 hast?

 

Ja, deshalb habe ich ja auch das i386 Paket genommen.  ;D

Kann es sein, dass es eine "586" compatible CPU ist die mit einem "486" Kernel laeuft. S.u. Ich habe den Rechner einfach ueber das original Bootimage aufgesetzt und die Installation lief problemlos durch.

 

~# dmesg|more
[    0.000000] Initializing cgroup subsys cpuset
[    0.000000] Initializing cgroup subsys cpu
[    0.000000] Linux version 2.6.32-5-486 (Debian 2.6.32-46) (dannf@debian.org) (gcc version 4.3.5 (Debian 4.3.5-4) ) #1 Sun Sep 23 09:17:35 UTC 2012
[    0.000000] KERNEL supported cpus:
[    0.000000]   Intel GenuineIntel
[    0.000000]   AMD AuthenticAMD
[    0.000000]   NSC Geode by NSC
[    0.000000]   Cyrix CyrixInstead
[    0.000000]   Centaur CentaurHauls
[    0.000000]   Transmeta GenuineTMx86
[    0.000000]   Transmeta TransmetaCPU
[    0.000000]   UMC UMC UMC UMC
[    0.000000] CPU: vendor_id 'SiS SiS SiS ' unknown, using generic init.

 

# cat /proc/cpuinfo
processor       : 0
vendor_id       : SiS SiS SiS
cpu family      : 5
model           : 0
model name      : 05/00
stepping        : 5
cpu MHz         : 199.473
fdiv_bug        : no
hlt_bug         : no
f00f_bug        : no
coma_bug        : no
fpu             : yes
fpu_exception   : yes
cpuid level     : 1
wp              : yes
flags           : fpu tsc cx8 mmx
bogomips        : 398.94
clflush size    : 32
cache_alignment : 32
address sizes   : 32 bits physical, 32 bits virtual
power management:

 

# uname -a
Linux PC 2.6.32-5-486 #1 Sun Sep 23 09:17:35 UTC 2012 i586 GNU/Linux

 

# gcc -Q -v
-bash: gcc: Kommando nicht gefunden.

  ;D

 

Das erste was mir gerade auffällt ist das brickd-*_i386.deb auf einem i686 Rechner compiliert wird und daher eigentlich i686 ist.

 

Aus diesem Grund haben wohl auch sehr viele Debian Programme speziell fuer die 386/486 Hardware compilierte Binaries.

 

Koennt Ihr das bitte fixen. Danke.

 

Der Loetkolben

Link to comment
Share on other sites

Hallo photron,

 

das sieht gut aus.  :D  :D

 

# dpkg -i brickd-2.0.4_really_i386.deb
Vormals abgewähltes Paket brickd wird gewählt.
(Lese Datenbank ... 19339 Dateien und Verzeichnisse sind derzeit installiert.)
Entpacken von brickd (aus brickd-2.0.4_really_i386.deb) ...
brickd (2.0.4) wird eingerichtet ...
update-rc.d: using dependency based boot sequencing
Starting Brick Daemon: Starting /usr/bin/brickd...

# /etc/init.d/brickd status
Status of Brick Daemon: running (pid 10631)

 

Diesen brickd habe ich auf dem Rechner installiert der KEINEN Stack dran hat. Wie du siehst startet er und BLEIBT gestartet. Der Livetest an dem anderen PC kommt warscheinlich heute abend, da ich dazu Telefonsupport (Brick flashen) benoetige.  ;)

 

Achso: hier waere ein Remotebrickflashing super zu gebrauchen.

 

Ich melde mich wieder, bin aber sehr zuversichtlich.

 

VIELEN DANK!

 

Der Loetkolben

Link to comment
Share on other sites

Hinweis: Beitragstitel geaendert.

 

Hallo photron.

 

So, nun haben wir telefonisch auch die Bricks wieder geflasht und remote den brickd getauscht. Funktioniert wie es soll.  :D  Super! :huepf:

 

Kleine Anekdote am Rande: Beim ersten Abruf mit dem den neuen Programmen (Protokollversion 2) kam jedem Menge Datenmuell. Ich habe keine Ahnung welcher Buffer da leer gemacht werden musste.  ;D  Fuer Neugiriege ist die Datei im Anhang.

 

Danke photron, danke Tinkerforge fuer die Unterstuetzung. Bitte weiterhin an den Compilterswitch "386" denken.  ;)

 

Aus meiner Sicht ist das Thema damit geschlossen.

 

Edit: Mit in den normalen Prozess uebernommen: Brick Daemon 2.0.5

 

Der Loetkolben

i386_temp_airp_first_v2_output.txt

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...