Audacity: " Ungültiger Maschinenbefehl"
Liebe Liste, seit einiger Zeit kann ich auf meinem (gemischten) Debiansystem Audacity nicht mehr starten. Ich vermute es liegt an inkompatiblen Libs. Vielleicht lässt sich dieses Strace mit etwas Erfahrung einfach entschlüsseln: ... access("/etc/ld.so.nohwcap", F_OK) = 0 open("/usr/lib/libtiff.so.4", O_RDONLY) = 3 read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\340H\0"..., 512) = 512 fstat64(3, {st_mode=S_IFREG|0644, st_size=335620, ...}) = 0 old_mmap(NULL, 335516, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x40bca000 old_mmap(0x40c1a000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x50000) = 0x40c1a000 close(3) = 0 old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40c1c000 mprotect(0x408f2000, 4096, PROT_READ) = 0 munmap(0x40017000, 91615) = 0 getrlimit(RLIMIT_STACK, {rlim_cur=RLIM_INFINITY, rlim_max=RLIM_INFINITY}) = 0 setrlimit(RLIMIT_STACK, {rlim_cur=2044*1024, rlim_max=RLIM_INFINITY}) = 0 getpid() = 12262 rt_sigaction(SIGRTMIN, {0x40793300, [], 0}, NULL, 8) = 0 rt_sigaction(SIGRT_1, {0x407933b0, [RTMIN], 0}, NULL, 8) = 0 rt_sigaction(SIGRT_2, {0x40792e80, [], 0}, NULL, 8) = 0 rt_sigprocmask(SIG_BLOCK, [RTMIN], NULL, 8) = 0 rt_sigprocmask(SIG_UNBLOCK, [RT_1], NULL, 8) = 0 _sysctl({{CTL_KERN, KERN_VERSION, 0, 20d49, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, 2, 0xbffff4c4, 31, (nil), 0}) = 0 brk(0) = 0x82dc000 brk(0x82fd000) = 0x82fd000 --- SIGILL (Illegal instruction) @ 0 (0) --- +++ killed by SIGILL +++ Hier noch ein paar Infos zum System: Linux localhost 2.6.8-2-k7 #1 Tue Aug 16 14:00:15 UTC 2005 i686 GNU/Linux AMD Athlon XP 1800+ apt-cache policy audacity audacity: Installiert:1.2.3-1 Mögliche Pakete:1.2.3-1 Versions-Tabelle: *** 1.2.3-1 0 500 http://ftp.skolelinux.no sarge/main Packages 100 /var/lib/dpkg/status apt-cache policy libtiff4 libtiff4: Installiert:3.7.4-1 Mögliche Pakete:3.7.4-1 Versions-Tabelle: *** 3.7.4-1 0 100 /var/lib/dpkg/status 3.7.2-3 0 500 http://ftp.skolelinux.no sarge/main Packages (Vielleicht wäre hier ein Downgrade einen Versuch wert? Dann würde aber Digikam mit von der Platte fliegen.) apt-cache policy libc6 libc6: Installiert:2.3.5-6 Mögliche Pakete:2.3.5-6 Versions-Tabelle: *** 2.3.5-6 0 100 /var/lib/dpkg/status 2.3.2.ds1-22sarge3 0 500 http://ftp.skolelinux.no sarge/main Packages Hier ist ein Downgrade nicht ganz ohne. Gibt es andere Möglichkeiten? Danke Gruß Ralf
On Sat, 2006-04-22 12:03:14 +0200, RalfGesellensetter <rgx@gmx.de> wrote:
seit einiger Zeit kann ich auf meinem (gemischten) Debiansystem Audacity
Was ist denn ein "gemischtes" Debian-System?
nicht mehr starten. Ich vermute es liegt an inkompatiblen Libs. Vielleicht lässt sich dieses Strace mit etwas Erfahrung einfach entschlüsseln:
Eher hätte ltrace sinnvolle Infos gegeben.
... access("/etc/ld.so.nohwcap", F_OK) = 0 open("/usr/lib/libtiff.so.4", O_RDONLY) = 3 read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\340H\0"..., 512) = 512 fstat64(3, {st_mode=S_IFREG|0644, st_size=335620, ...}) = 0 old_mmap(NULL, 335516, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x40bca000 old_mmap(0x40c1a000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x50000) = 0x40c1a000 close(3) = 0 old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40c1c000 mprotect(0x408f2000, 4096, PROT_READ) = 0 munmap(0x40017000, 91615) = 0 getrlimit(RLIMIT_STACK, {rlim_cur=RLIM_INFINITY, rlim_max=RLIM_INFINITY}) = 0 setrlimit(RLIMIT_STACK, {rlim_cur=2044*1024, rlim_max=RLIM_INFINITY}) = 0 getpid() = 12262 rt_sigaction(SIGRTMIN, {0x40793300, [], 0}, NULL, 8) = 0 rt_sigaction(SIGRT_1, {0x407933b0, [RTMIN], 0}, NULL, 8) = 0 rt_sigaction(SIGRT_2, {0x40792e80, [], 0}, NULL, 8) = 0 rt_sigprocmask(SIG_BLOCK, [RTMIN], NULL, 8) = 0 rt_sigprocmask(SIG_UNBLOCK, [RT_1], NULL, 8) = 0 _sysctl({{CTL_KERN, KERN_VERSION, 0, 20d49, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, 2, 0xbffff4c4, 31, (nil), 0}) = 0 brk(0) = 0x82dc000 brk(0x82fd000) = 0x82fd000 --- SIGILL (Illegal instruction) @ 0 (0) --- +++ killed by SIGILL +++
Das ist entweder sehr früh beim Programmstart--oder die libtiff wurde via libdl nachgeladen. Also... Drei Dinge gibts, die interessant sind: Einmal solltest Du ltrace statt strace nehmen, das ist viel näher an dem, was uns interessiert. Sollte das noch zur Startzeit des Programms passieren (also bevor main() aufgerufen wurde), dann sollten wir erstmal genauer in den Link-Prozeß gucken: LD_DEBUG=all audacity > foo 2>&1 ...und dann könnte man noch gucken, ob die libSegFault da weitere Infos bringt: LD_PRELOAD=/lib/libSegFault.so audacity > foo2 2>&1 Wenn das alles keine Erkenntnisse bringt, bleibt nur noch die Neukompilation der beteiligten Programme/Libraries. Allerdings wundert mich das Verhalten schon: soetwas sollte eigentlich nicht vorkommen. Hast Du mal manuell an irgendwelchen Schrauben gedreht, von denen man besser hätte die Finger lassen sollen? Z.B. irgendwelche zusätzlichen Symlinks für Libraries angelegt? MfG, JBG -- Jan-Benedict Glaw jbglaw@lug-owl.de . +49-172-7608481 _ O _ "Eine Freie Meinung in einem Freien Kopf | Gegen Zensur | Gegen Krieg _ _ O für einen Freien Staat voll Freier Bürger" | im Internet! | im Irak! O O O ret = do_actions((curr | FREE_SPEECH) & ~(NEW_COPYRIGHT_LAW | DRM | TCPA));
Hallo Jan-Benedict, danke für die rasche und ausführliche Antwort... Am Samstag 22 April 2006 21:07 schrieb Jan-Benedict Glaw:
On Sat, 2006-04-22 12:03:14 +0200, RalfGesellensetter <rgx@gmx.de> wrote:
seit einiger Zeit kann ich auf meinem (gemischten) Debiansystem Audacity
Was ist denn ein "gemischtes" Debian-System?
"Gemischt" heißt, dass sowohl stable als auch unstable -Quellen verwendet wurden, wobei z.Zt. fast nur noch stable Quellen aktiv sind, so dass einige Libs neuer sind als die neueste verfügbare. ...
Eher hätte ltrace sinnvolle Infos gegeben.
ltrace gibt keine Zeilen aus - in der Tat erfolgt der Crash direkt beim Start. ...
Also... Drei Dinge gibts, die interessant sind:
Einmal solltest Du ltrace statt strace nehmen, das ist viel näher an dem, was uns interessiert.
s.o.
Sollte das noch zur Startzeit des Programms passieren (also bevor main() aufgerufen wurde), dann sollten wir erstmal genauer in den Link-Prozeß gucken:
LD_DEBUG=all audacity > foo 2>&1
Aha, hier sehen wir schon (viel) mehr. Erst nach einiger Zeit kommt der Fehler: ... 19168: symbol=malloc; lookup in file=/lib/libc.so.6 19168: binding file /lib/libc.so.6 to /lib/libc.so.6: normal symbol `malloc' [GLIBC_2.0] 19168: symbol=_ZN18wxBaseArrayPtrVoidC2Ev; lookup in file=audacity 19168: symbol=_ZN18wxBaseArrayPtrVoidC2Ev; lookup in file=/usr/lib/libsndfile.so.1 ... 19168: symbol=_Z14wxNewEventTypev; lookup in file=/usr/lib/libogg.so.0 19168: symbol=_Z14wxNewEventTypev; lookup in file=/usr/lib/libid3tag.so.0 19168: symbol=_Z14wxNewEventTypev; lookup in file=/usr/lib/libwx_gtk-2.4.so.0 19168: binding file /usr/lib/libwx_gtk-2.4.so.0 to /usr/lib/libwx_gtk-2.4.so.0: normal symbol `_Z14wxNewEventTypev' [WXGTK_2.4] Ungültiger Maschinenbefehl
...und dann könnte man noch gucken, ob die libSegFault da weitere Infos bringt:
LD_PRELOAD=/lib/libSegFault.so audacity > foo2 2>&1
Keine Infos hier.
Wenn das alles keine Erkenntnisse bringt, bleibt nur noch die Neukompilation der beteiligten Programme/Libraries. Allerdings
Downgrade von libc6 oder Wiederaufnahme der unstable-Quellen wäre mein Versuch.
wundert mich das Verhalten schon: soetwas sollte eigentlich nicht vorkommen. Hast Du mal manuell an irgendwelchen Schrauben gedreht, von denen man besser hätte die Finger lassen sollen? Z.B. irgendwelche zusätzlichen Symlinks für Libraries angelegt?
Dazu schweige ich lieber ;) Gruß Ralf
On Sat, 2006-04-22 22:06:27 +0200, Ralf Gesellensetter <rgx@gmx.de> wrote:
Am Samstag 22 April 2006 21:07 schrieb Jan-Benedict Glaw:
On Sat, 2006-04-22 12:03:14 +0200, RalfGesellensetter <rgx@gmx.de> wrote:
seit einiger Zeit kann ich auf meinem (gemischten) Debiansystem Audacity
Was ist denn ein "gemischtes" Debian-System?
"Gemischt" heißt, dass sowohl stable als auch unstable -Quellen verwendet wurden, wobei z.Zt. fast nur noch stable Quellen aktiv sind, so dass einige Libs neuer sind als die neueste verfügbare.
Bitte kürz' doch mal Deine Zeilen. (...und wenn Du schon dabei bist: änder' doch mal Deinen Namen...)
Sollte das noch zur Startzeit des Programms passieren (also bevor main() aufgerufen wurde), dann sollten wir erstmal genauer in den Link-Prozeß gucken:
LD_DEBUG=all audacity > foo 2>&1
Aha, hier sehen wir schon (viel) mehr. Erst nach einiger Zeit kommt der Fehler: ... 19168: symbol=malloc; lookup in file=/lib/libc.so.6 19168: binding file /lib/libc.so.6 to /lib/libc.so.6: normal symbol `malloc' [GLIBC_2.0] 19168: symbol=_ZN18wxBaseArrayPtrVoidC2Ev; lookup in file=audacity 19168: symbol=_ZN18wxBaseArrayPtrVoidC2Ev; lookup in file=/usr/lib/libsndfile.so.1 ... 19168: symbol=_Z14wxNewEventTypev; lookup in file=/usr/lib/libogg.so.0 19168: symbol=_Z14wxNewEventTypev; lookup in file=/usr/lib/libid3tag.so.0 19168: symbol=_Z14wxNewEventTypev; lookup in file=/usr/lib/libwx_gtk-2.4.so.0 19168: binding file /usr/lib/libwx_gtk-2.4.so.0 to /usr/lib/libwx_gtk-2.4.so.0: normal symbol `_Z14wxNewEventTypev' [WXGTK_2.4] Ungültiger Maschinenbefehl
*sigh* Wenn ich nur einen kurzen Auszug hätte haben wollen, hätte das da bestimmt gestanden :)
wundert mich das Verhalten schon: soetwas sollte eigentlich nicht vorkommen. Hast Du mal manuell an irgendwelchen Schrauben gedreht, von denen man besser hätte die Finger lassen sollen? Z.B. irgendwelche zusätzlichen Symlinks für Libraries angelegt?
Dazu schweige ich lieber ;)
Dann find' den Fehler selbst:) Zusätzliche Links anzulegen wäre so ziemlich das dümmste, was man machen kann. Damit erledigst Du die Versionierung im Handumdrehen (...und so Fehlerbilder wie Deines da oben kommen auf.) MfG, JBG -- Jan-Benedict Glaw jbglaw@lug-owl.de . +49-172-7608481 _ O _ "Eine Freie Meinung in einem Freien Kopf | Gegen Zensur | Gegen Krieg _ _ O für einen Freien Staat voll Freier Bürger" | im Internet! | im Irak! O O O ret = do_actions((curr | FREE_SPEECH) & ~(NEW_COPYRIGHT_LAW | DRM | TCPA));
RalfGesellensetter wrote:
Hallo Jan-Benedict, danke für die rasche und ausführliche Antwort...
Am Samstag 22 April 2006 21:07 schrieb Jan-Benedict Glaw: [snip]
Sollte das noch zur Startzeit des Programms passieren (also bevor main() aufgerufen wurde), dann sollten wir erstmal genauer in den Link-Prozeß gucken:
LD_DEBUG=all audacity > foo 2>&1
Aha, hier sehen wir schon (viel) mehr. Erst nach einiger Zeit kommt der Fehler: ... 19168: symbol=malloc; lookup in file=/lib/libc.so.6 19168: binding file /lib/libc.so.6 to /lib/libc.so.6: normal symbol `malloc' [GLIBC_2.0] 19168: symbol=_ZN18wxBaseArrayPtrVoidC2Ev; lookup in file=audacity 19168: symbol=_ZN18wxBaseArrayPtrVoidC2Ev; lookup in file=/usr/lib/libsndfile.so.1 ... 19168: symbol=_Z14wxNewEventTypev; lookup in file=/usr/lib/libogg.so.0 19168: symbol=_Z14wxNewEventTypev; lookup in file=/usr/lib/libid3tag.so.0 19168: symbol=_Z14wxNewEventTypev; lookup in file=/usr/lib/libwx_gtk-2.4.so.0 19168: binding file /usr/lib/libwx_gtk-2.4.so.0 to /usr/lib/libwx_gtk-2.4.so.0: normal symbol `_Z14wxNewEventTypev' [WXGTK_2.4] Ungültiger Maschinenbefehl
Hmmm, das sieht nach einer C++-Verstrickung aus. ABI-Inkompatibilitaet zwischen gcc-3x und 4.x? Eine C++-Lib die Audacity benutz ist aus stable und mit 3.x kompiliert, eine andere vielleicht aus unstable und mit 4.x kompiliert. Nur so als vermutung... Was waren den die letzten syscalls in dem ersten Strace, das du geschickt hast, vor dem: access("/etc/ld.so.nohwcap", F_OK) = 0 [snip]
wundert mich das Verhalten schon: soetwas sollte eigentlich nicht vorkommen. Hast Du mal manuell an irgendwelchen Schrauben gedreht, von denen man besser hätte die Finger lassen sollen? Z.B. irgendwelche zusätzlichen Symlinks für Libraries angelegt?
Dazu schweige ich lieber ;)
Das muss nicht mal deine Schuld sein, das ist dann der Punkt, wo auch die besten Packetsysteme schon mal versagen. Wenns ein Gentoo waer wuerd ich dir ja zu einem revdep-rebuild raten.
Gruß Ralf Gruss Jan
-- Morgens schoen erstmal nen Kopf aus geraspelten man-pages rauchen, das entspannt
On Sun, 2006-04-23 00:09:27 +0200, Jan 'RedBully' Seiffert <redbully@cc.fh-luh.de> wrote:
RalfGesellensetter wrote: Hmmm, das sieht nach einer C++-Verstrickung aus. ABI-Inkompatibilitaet zwischen gcc-3x und 4.x? Eine C++-Lib die Audacity
In dem Fall werden die Symbole unterschiedlich kodiert, ergo sollte es zu einem Linker-Fehler kommen. [Symlinks für libraries.]
Das muss nicht mal deine Schuld sein, das ist dann der Punkt, wo auch die besten Packetsysteme schon mal versagen.
Das Paketsystem ist nicht für die Symlinks verantwortlich. `ldconfig' ist es--und das macht nur das, was in den Libs drinsteht. Wenn man selbst eine lib "kompatibel" macht, indem man falsche Symlinks verteilt, wird ldconfig davon erstmal nicht viel von mitbekommen. Nur sterben die Programme, wenn sie versuchen, die vermeintlich kompatible lib zu benutzen... MfG, JBG -- Jan-Benedict Glaw jbglaw@lug-owl.de . +49-172-7608481 _ O _ "Eine Freie Meinung in einem Freien Kopf | Gegen Zensur | Gegen Krieg _ _ O für einen Freien Staat voll Freier Bürger" | im Internet! | im Irak! O O O ret = do_actions((curr | FREE_SPEECH) & ~(NEW_COPYRIGHT_LAW | DRM | TCPA));
Jan-Benedict Glaw wrote:
On Sun, 2006-04-23 00:09:27 +0200, Jan 'RedBully' Seiffert <redbully@cc.fh-luh.de> wrote:
Hmmm, das sieht nach einer C++-Verstrickung aus. ABI-Inkompatibilitaet zwischen gcc-3x und 4.x? Eine C++-Lib die Audacity
In dem Fall werden die Symbole unterschiedlich kodiert, ergo sollte es zu einem Linker-Fehler kommen.
Ich dachte auch weniger an eine Aenderung der Regeln fuer das C++ (Symbol-)Namemangeling, sondern eher _z.B._ an eine Aendrung des Stacklayout fuer unwinding (Exceptions). Wuerde auch erklaeren, warum ein SIGILL bei rumkommt. Oder ein Symbolclash, er nimmt irgendwo das falsche. Aber das ist halt nur eine Vermutung. Hatte ich erwaehnt das ich bei der betrachtung von C++Source Kopfschmerzen bekomme? :-D
[Symlinks für libraries.]
Das muss nicht mal deine Schuld sein, das ist dann der Punkt, wo auch die besten Packetsysteme schon mal versagen.
Das Paketsystem ist nicht für die Symlinks verantwortlich. `ldconfig' ist es--und das macht nur das, was in den Libs drinsteht. Wenn man selbst eine lib "kompatibel" macht, indem man falsche Symlinks verteilt, wird ldconfig davon erstmal nicht viel von mitbekommen. Nur sterben die Programme, wenn sie versuchen, die vermeintlich kompatible lib zu benutzen...
Hmmm, wie beschreibe ich das jetzt mal... Lib X ist mit Compiler A kompiliert. Das Programm N (auch mit Compiler A kompiliert) kann sie problemlos benutzen. Wenn nun die gleiche Lib X mit Compiler B (oder A+1) kompiliert wurde, kann es sein, dass das Programm N, welches _nicht_ mit Compiler B kompiliert wurde, stirbt. Das meinte ich. Und das meinte ich, wenn ich davon redete das Packetsysteme da ins schleudern kommen, es beduerfte eines Metafeldes "mit Toolchain X.Y.Z erstellt", so das zu einem Programm (in solchen Faellen) die Libs passend installiert werden (wie das ueber zusaetzeliche Suffixe (.so.1.gcc3), Symlinks &| $LD_* geloest, und dem runtime-linker verklickert wird, ist ein anderes Thema...). Nicht schoen, aber wilkommen in der tollen Welt von C++ Aber grau ist alle Theorie, ich versuche nur zu Helfen, er sagte das er ein "Mischsystem" hat, da dachte ich, er hat sich da was in den Libs zersaegt. Libkompatibilitaet (libk13t?), ein Problem, was ich von Gentoo gut kenne, da kann man es aber mit ein paar gezielten neukompilierungen "einfach" erschlagen, solange das "Grundsystem" (libc, gcc, etc.) lebt.
MfG, JBG
Gruss Jan -- Es sieht so aus, als ob sie rutschen. moechten sie: - mehr Naegel (verhindert weiteres rutschen) - das Kreuz einem Freund schicken .... - weiteres rutschen ignorieren. </bueroklammer>
Hi und Danke für die Resonanz ;) Am Sonntag 23 April 2006 12:59 schrieb Jan 'RedBully' Seiffert:
Hatte ich erwaehnt das ich bei der betrachtung von C++Source Kopfschmerzen bekomme?
Danke für den Tipp, dann besorge ich mir schon einmal Paracetamol ;) Auf Wunsch kann ich alle Informationen bei pastebin hinterlegen. Es handelt sich im keine Eigenkompilation sondern ausschließlich um Debianpakte. strace: http://pastebin.com/676810 LD_DEBUG=all ltrace audacity | wc 103588 567645 9873110 !!! Die Ausgabe ist > 9 MB groß und daher nicht für Pastebin geeignet. Stattdessen kann ich auf Wunsch die gzip-Datei (478 K) zumailen. apt-cache policy: http://pastebin.com/676817 sources.list: http://pastebin.com/676826 Gruß Ralf P.S.: Mit dem Kernel hat das übrigens nichts zu tun. Habe jetzt 2.6.15 verwendet.
Am Sonntag 23 April 2006 00:09 schrieb Jan 'RedBully' Seiffert:
RalfGesellensetter wrote:
Hallo Jan-Benedict, danke für die rasche und ausführliche Antwort...
Am Samstag 22 April 2006 21:07 schrieb Jan-Benedict Glaw:
[snip]
Sollte das noch zur Startzeit des Programms passieren (also bevor main() aufgerufen wurde), dann sollten wir erstmal genauer in den Link-Prozeß gucken:
LD_DEBUG=all audacity > foo 2>&1
Aha, hier sehen wir schon (viel) mehr. Erst nach einiger Zeit kommt der Fehler: ... 19168: symbol=malloc; lookup in file=/lib/libc.so.6 19168: binding file /lib/libc.so.6 to /lib/libc.so.6: normal symbol `malloc' [GLIBC_2.0] 19168: symbol=_ZN18wxBaseArrayPtrVoidC2Ev; lookup in file=audacity 19168: symbol=_ZN18wxBaseArrayPtrVoidC2Ev; lookup in file=/usr/lib/libsndfile.so.1 ... 19168: symbol=_Z14wxNewEventTypev; lookup in file=/usr/lib/libogg.so.0 19168: symbol=_Z14wxNewEventTypev; lookup in file=/usr/lib/libid3tag.so.0 19168: symbol=_Z14wxNewEventTypev; lookup in file=/usr/lib/libwx_gtk-2.4.so.0 19168: binding file /usr/lib/libwx_gtk-2.4.so.0 to /usr/lib/libwx_gtk-2.4.so.0: normal symbol `_Z14wxNewEventTypev' [WXGTK_2.4] Ungültiger Maschinenbefehl
Hmmm, das sieht nach einer C++-Verstrickung aus. ABI-Inkompatibilitaet zwischen gcc-3x und 4.x? Eine C++-Lib die Audacity benutz ist aus stable und mit 3.x kompiliert, eine andere vielleicht aus unstable und mit 4.x kompiliert. Nur so als vermutung... Was waren den die letzten syscalls in dem ersten Strace, das du geschickt hast, vor dem: access("/etc/ld.so.nohwcap", F_OK) = 0
[snip]
hallo, nur meine 2 cent dazu. audacity benutzt als GUI entwicklungstool wxWidgets. unter linux heisst der port wxGTK. mir scheint, das die libs von wxGTK nicht mehr ganz aktuell sind. meines wissens ist wxWidgets mittlerweile schon bei 2.6. die würde ich erst mal erneueren sizu c~
On Sun, Apr 23, 2006 at 12:09:27AM +0200, Jan 'RedBully' Seiffert wrote:
Hmmm, das sieht nach einer C++-Verstrickung aus. ABI-Inkompatibilitaet zwischen gcc-3x und 4.x? Eine C++-Lib die Audacity benutz ist aus stable und mit 3.x kompiliert, eine andere vielleicht aus unstable und mit 4.x kompiliert.
Geht eigentlich nicht weil gcc3 und gcc4 unterschiedliche libstdc++ sonames verwenden. (Es sei denn man setzt manuelle links) flo@ant:~$ dpkg -l libstdc++* | grep ^ii ii libstdc++5 3.3.6-13 The GNU Standard C++ Library v3 ii libstdc++5-3.3-dev 3.3.6-13 The GNU Standard C++ Library v3 (development ii libstdc++6 4.1.0-1 The GNU Standard C++ Library v3 ii libstdc++6-dev 3.4.6-1 The GNU Standard C++ Library v3 (development Ich habe also die gcc 4.1 und gcc 3.3 libstdc++ parallel installiert. Flo -- Florian Lohoff flo@rfc822.org +49-171-2280134 Heisenberg may have been here.
On Sat, Apr 22, 2006 at 12:03:14PM +0200, RalfGesellensetter wrote:
seit einiger Zeit kann ich auf meinem (gemischten) Debiansystem Audacity
Das loes doch mal auf - Sid nehmen und den audacity dependency tree auf aktuell bringen.
nicht mehr starten. Ich vermute es liegt an inkompatiblen Libs. Vielleicht lässt sich dieses Strace mit etwas Erfahrung einfach entschlüsseln:
Wenn du keine symlinks gelegt hast manuell dann kann es eigentlich nur an mangelhaften dependencys fuer debian liegen. Du hast dir einen unstable bug eingehandelt der wohlmoeglich schon geloest ist - Deshalb - upgrade der audacity dependencys auf latest and greatest. Einmal sid immer sid - nachtraeglich wieder nur "sarge" eintragen wird das system nur instabil machen. Flo -- Florian Lohoff flo@rfc822.org +49-171-2280134 Heisenberg may have been here.
Am Sonntag 23 April 2006 16:48 schrieben Sie:
Das loes doch mal auf - Sid nehmen und den audacity dependency tree auf aktuell bringen.
Hi Flo & danke für den naheliegenden Anstoß. Nach Wiederaufnahme der testing-Quellen und apt-get update waren das die Schritte, die erwartungsgemäß Erfolg hatten: # apt-cache policy audacity audacity: Installiert:1.2.3-1 Mögliche Pakete:1.2.4b-2 Versions-Tabelle: 1.2.4b-2 0 990 http://ftp.debian.de testing/main Packages *** 1.2.3-1 0 500 http://ftp.skolelinux.no sarge/main Packages 100 /var/lib/dpkg/status # apt-get install audacity Paketlisten werden gelesen... Fertig Abhängigkeitsbaum wird aufgebaut... Fertig Die folgenden zusätzlichen Pakete werden installiert: gcc-4.1-base libc6 libc6-dbg libc6-dev libflac++5 libflac7 libgcc1 libstdc++6 libwxgtk2.4-1 tzdata Vorgeschlagene Pakete: glibc-doc manpages-dev Die folgenden NEUEN Pakete werden installiert: gcc-4.1-base libflac++5 libflac7 libwxgtk2.4-1 tzdata Die folgenden Pakete werden aktualisiert: audacity libc6 libc6-dbg libc6-dev libgcc1 libstdc++6 6 aktualisiert, 5 neu installiert, 0 zu entfernen und 1034 nicht aktualisiert. Wähle vormals abgewähltes Paket tzdata. (Lese Datenbank ... 189751 Dateien und Verzeichnisse sind derzeit installiert.) Entpacke tzdata (aus .../tzdata_2006c-2_all.deb) ... Ersetze die Dateien im alten Paket libc6 ... Vorbereiten zum Ersetzen von libc6-dev 2.3.5-6 (durch .../libc6-dev_2.3.6-7_i386.deb) ... Entpacke Ersatz für libc6-dev ... Vorbereiten zum Ersetzen von libc6-dbg 2.3.5-6 (durch .../libc6-dbg_2.3.6-7_i386.deb) ... Entpacke Ersatz für libc6-dbg ... Vorbereiten zum Ersetzen von libc6 2.3.5-6 (durch .../libc6_2.3.6-7_i386.deb) ... ... Danke Gruß Ralf
Teilnehmer (5)
-
conrad berhörster
-
Florian Lohoff
-
Jan 'RedBully' Seiffert
-
Jan-Benedict Glaw
-
RalfGesellensetter