"Illegal instruction" nach asterisk 1.2 installation

Rhab

Neuer User
Mitglied seit
29 Mrz 2007
Beiträge
4
Punkte für Reaktionen
0
Punkte
0
Guten Tag,
folgendes seltsames Problem entstand bei mir als ich asterisk einrichten wollte:

Mein System:
VIA C3 533mhz
debian 3.1r5 sarge (stable) minimale net-inst
kernel 2.6.8-3-386
HFC-S usb

Ich habe nach der debian installation das kernel-package und gcc installiert.

Danach diese Befehle ausgeführt:
Code:
apt-get update
apt-get -y upgrade
apt-get -y install openssl zlibc libkrb5-dev libncurses5-dev libssl-dev zlib1g-dev 
apt-get install kernel-headers-2.6.8-3-386

##wechsel in /usr/src/
wget http://ftp.digium.com/pub/asterisk/asterisk-1.2-current.tar.gz 
tar -xvzf asterisk-1.2.17.tar.gz

cd asterisk-1.2.17
make
make install
make samples

Das compiling lief ohne (für mich) sichtbare probleme.
Die config dateien sind alle in /etc/asterisk/ vorhanden.

Wenn ich nun z.b. "asterisk -vvvvvc" eingebe um zu starten, kommt immer nur folgende ausgabe: "Illegal instruction"

Ich hab keinen Plan was da schiefgelaufen ist - meine installation war auch ganz frisch! - und im #asterisk channel konnte mir bis jetzt auch niemand weiterhelfen.

Ich hoffe jmd. hat eine idee was das zu bedeuten hat. Trivialfehler?

Gruß
Rhab
 
Ich kam auf die blendende idee die suchfunktion zu benutzen und habe diesen thread gefunden:
http://www.ip-phone-forum.de/showthread.php?t=85833&highlight=illegal+instruction

Das heißt also, dass ich in der makefile was ändern, muss damit alles für i586 compiliert wird?
Wenn ja, wo genau und wie sähe eine solche änderung aus?

Beim compilierprozess von asterisk fiel mir mehrmals "march=i686" auf; bestätigt das die these, dass hier für die VIA cpu falsch compiliert wurde?
Im übrigen sieht meine cat /proc/cpuinfo auf den ersten blick bis auf cpu takt und cache so aus wie im oben genannten thread:

# cat /proc/cpuinfo
processor : 0
vendor_id : CentaurHauls
cpu family : 6
model : 7
model name : VIA Samuel 2
stepping : 3
cpu MHz : 601.504
cache size : 64 KB
fdiv_bug : no
hlt_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 1
wp : yes
flags : fpu de tsc msr cx8 mtrr pge mmx 3dnow
bogomips : 1183.74

Falls ich mit meiner analyse richtig liege, bitte kurz rueckmeldung geben.
 
Dazu fand ich per google in einem Forum folgenden Hinweis:
Die Ezra CPUs werden als 686 (nicht 586) erkannt, was sie auch sind, aber sie können (bestimmte?) cmov Befehle nicht. Laut Intel spec. für 686 müssen diese Befehle auch nicht unterstützt werden (allerdings scheinen alle anderen 686 Prozessoren dies zu tun).
Dummerweise gehen libraries (zeitweise glibc) und evtl. Compiler?? davon aus, das bei 686 die Befehle zwingend vorhanden sind...
Auf die schnelle finde ich hierzu nur http://linux.derkeiler.com/Mailing-Lists/Kernel/2003-08/2745.html

Lösung das Makefile editieren und PROC=i586 aktivieren (steht auf Kommentar)!
 
Ok.

Es handelt sich um eine VIA Eden 533mhz cpu soweit ich jetzt weiß.

Wäre es auch eine Lösung die Compilerflags anzupassen?
Dazu hab ich etwas gefunden:

Code:
Eden C3/Ezra (Via)

CHOST="i586-pc-linux-gnu"
CFLAGS="-march=i586 -m3dnow -O3 -pipe -fomit-frame-pointer"
CXXFLAGS="-march=i586 -m3dnow -O3 -pipe -fomit-frame-pointer"

Wäre damit das Problem gelöst und auch gleich für andere compilierprozesse?
Ich bin im moment auf arbeit, werde aber heute abend das selbst noch ausprobieren.
 
Es gibt im Makefile nur ein PROC=i586 und keine weiteren Differnzierungen.
 
@Rhab

Meinen VIA habe ich immer mit einem neuem gcc compiliert.
Man muß aber auch darauf achten, daß die Treiber wie z.B.
zaptel und zaphfc mit dem gleichen Compiler compiliert wurden der
für den Kernel genummen wurde, sonst gibt es einen "tainted"-Fehler.
Die neuen GCC's unterstützen auch direkt den C3 also anstatt -march=xxx
-march=c3-2 und -mtune=c3-2 (Nehemiah) bzw. -march=c3 andere C3's.
Bei debian testing kann man den gcc-4.1 nehmen.

Welche Features die CPU unterstüzt steht in
Code:
cowboy@hip:~$ cat /proc/cpuinfo
processor       : 0
vendor_id       : CentaurHauls
cpu family      : 6
model           : 9
model name      : VIA Nehemiah
stepping        : 8
cpu MHz         : 1205.135
cache size      : 64 KB
fdiv_bug        : no
hlt_bug         : no
f00f_bug        : no
coma_bug        : no
fpu             : yes
fpu_exception   : yes
cpuid level     : 1
wp              : yes
flags           : fpu vme de pse tsc msr cx8 sep mtrr pge cmov pat mmx fxsr sse rng rng_en ace ace_en
bogomips        : 2412.60

3dnow hat meiner demnach definitv nicht.

Gruß
britzelfix
 
Kostenlos!

Statistik des Forums

Themen
248,900
Beiträge
2,304,489
Mitglieder
378,598
Neuestes Mitglied
Drageja