[EMAIL PROTECTED] - Digest     Monday, August 21 2000     Volume 01 : Number 084




----------------------------------------------------------------------

Date: Mon, 21 Aug 2000 00:51:39 +0200
From: =?iso-8859-1?Q?Bj=F6rn?= Pfeiffer <[EMAIL PROTECTED]>
Subject: Re: [PUG] mp3 will nicht.

Hallo!

Eduard Refinius wrote:

> Also ich habe es inzwischen auch schon mit
> make linux
> und
> make linux-i486
> probiert.
> Es folgen die beiden Ausgaben:

>...
Interessant wird es erst so richtig, wo die Fehler auftauchen:

> layer3.o: In function `do_layer3':
> layer3.o(.text+0x735d): undefined reference to `synth_1to1_486'

"undefined reference" hei�t glaube ich, da� der linker (ld) nicht
wei�, wohin er Funktionsaufrufe im Programm hinlinken soll, also: Zu
welcher Objekt-Datei (die mit .o-Endung. Entsprechen den dll's in
WinDos). 

>...
> decode_i386.o: In function `synth_1to1':
> decode_i386.o(.text+0x36): undefined reference to `synth_1to1_3dnow'

...und hier haben wir vielleicht den Grund f�r die Verwirrung: Was
macht das `synth_1to1_3dnow' denn hier? 3d-Now war doch abgehakt...!!!
;-)
Vergleiche hier auch mal `synth_1to1_3dnow' mit `synth_1to1_486' (von
oben): Klingen doch verd�chtig nach Zwillingen, oder? Aber es darf f�r
"ld" offenbar nur einen geben!
- -> Meine Vermutung ist hier, da� der linker sich nicht entscheiden
kann, ob er nu die eine oder die andere nehmen soll. Allerdings sind
die beide weiter oben noch gar nicht aufgetaucht - vielleicht ist auch
nur irgendwie die Reihenfolge durcheinander, und sie sind noch nicht
kompiliert... Sind denn irgendwo Dateien mit diesen Namen (und evtl
noch was dran im Namen) aufgetaucht?

Wie gesagt: Ich hab hier auch nicht den gro�en Durchblick und bin auch
nur am Raten, wie alle hier. Ist ja keiner ein Universalgenie. ;-) 
Es kommt nur darauf an, beim Raten etwas �bung zu bekommen, um ein
paar Anhaltspunkte f�r die Bastelei zu bekommen, damit kannst Du dann
fast alles hinbiegen. 

>...

> mpg123.o tabinit.o common.o layer1.o \
>         layer2.o layer3.o audio.o buffer.o decode_2to1.o equalizer.o \
>         decode_4to1.o getlopt.o httpget.o xfermem.o decode_ntom.o \
>         wav.o readers.o getbits.o control_generic.o \
>         decode_i386.o dct64_i386.o decode_i586.o
> decode_i486.o dct64_i486.o audio_oss.o term.o -o mpg123 -lm
> decode_i386.o: In function `synth_1to1':
> decode_i386.o(.text+0x36): undefined reference to `synth_1to1_3dnow'

Dasselbe Problem.

> collect2: ld returned 1 exit status

...und ld verabschiedet sich.

>...

Also zu guter letzt mein Tip: Versuch die Dateien, die was mit 3dnow
im Namen tragen (und am Besten alle *.o) wieder loszuwerden: Sehr
wahrscheinlich stammen die von Deinem Versuch vorher. Normalerweise
tut das ein "make clean", alle .o -Dateien und �berhaupt alles, was
bei der Kompilierung so liegen geblieben ist, wegzuputzen. 
Wenn make kein clean kennt ("no target" meckert es dann, o.s.�.), was
ich nicht glaube, mu�t du sie per Hand loswerden (SAD ;-). Oder im
MAKEFILE selbst nach etwas �hnlichem suchen (die "targets" stehen da
glaube ich in [], als �berschriften drinnen. Wo unter einer
�berschrift da was mit vielen "rm -f *.o" steht, das mal probieren.)

Noch 'ne Frage: Findet sich kein README in dem Verzeichnis, wo das
MAKEFILE steht? Sollte es eigentlich fast immer... Vielleicht k�nnte
das ja weiterhelfen.

Viel Gl�ck denn noch!
CU,
Bj�rn.

- --
  The first thing we do, let's
  kill all the language lawyers.

            - Henry VI, Part II

------------------------------

Date: Mon, 21 Aug 2000 11:02:30 +0200
From: Tim Gesekus <[EMAIL PROTECTED]>
Subject: Re: [PUG] mp3 will nicht.

On Sun, Aug 20, 2000 at 10:54:36PM +0200, Eduard Refinius wrote:
> Tim Gesekus wrote:
> Die Kunst des Shellzeilenlesens mu� auch noch erlernt werden.
In diesem Fall musst Du wohl eher lernen, was Dir Dein Compiler
sagen will. Bzw. unten was Dir Dein Linker sagen will.
> root@erde:/opt/mp3/mpg123-0.59r > make linux
> layer3.o: In function `do_layer3':
> layer3.o(.text+0x735d): undefined reference to `synth_1to1_486'
> layer3.o(.text+0x737f): undefined reference to `synth_1to1_486'
> layer3.o(.text+0x73f9): undefined reference to `synth_1to1_486'
> layer3.o(.text+0x741b): undefined reference to `synth_1to1_486'
> decode_i386.o: In function `synth_1to1':
> decode_i386.o(.text+0x36): undefined reference to `synth_1to1_3dnow'
> collect2: ld returned 1 exit status
Da hat es sich wohl selber ins Knie geschossen. 
Der Linker hat versuch einen Symbol aufzuloesen, das er dann nicht 
gefunden hat. synth_1to1_3dnow klingt mir doch sehr nach amd.
Hast Du vor make linux auch brav ein make clean gemacht? Das sollte
eigentlich helfen. 
<SCHNIPP>
</SCHNIPP>
> decode_i386.o: In function `synth_1to1':
> decode_i386.o(.text+0x36): undefined reference to `synth_1to1_3dnow'
Siehe oben.
> Aber eine erfreuliche Nachricht betreffend mp3 habe ich jetzt doch.
> Nach der Installation der ganzen Pakete f�r GQmpeg, habe
> freeamp draufgemacht. Und es funktioniert sogar, was vor der
> Installation dieser Pakete nicht der Fall war.
Macht ja Fortschritte. In einem Jahr laeuft Dein Linux auch so wie
Du es haben willst. Da soll noch einer sagen Linux ist nicht 
Einsteiger freundlich. *g*

tim

- -- 
Tim Gesekus  ****   eMail: Tim Gesekus <[EMAIL PROTECTED]>
****************************************************************
hm, ist mir zu teuer ich nehm Schlecker-Hausmarke mit nem Schuss
Weichspueler, kriegt man ne schoene Stimme von.     H.D. 
****************************************************************

------------------------------

Date: Mon, 21 Aug 2000 11:03:31 +0200 (MET DST)
From: Matthias Firner <[EMAIL PROTECTED]>
Subject: Re: [PUG] mp3 will nicht.

Hallo Eduard.

> 
> Ich habe es mit make linux-3dnow versucht:
> 
> root@erde:/opt/mp3/mpg123-0.59r > make linux-3dnow
[Ausgaben des Compilers]
> mpg123.c:480: warning: initialization makes integer from pointer without
> a cast
Das ist eine Fehlermeldung - anscheinend hat der Programmierer Mist
gebaut.
[noch viel mehr Fehlermeldungen, wahrscheinlich als Folge davon]

> make[2]: *** [dct64_3dnow.o] Error 1
> make[2]: Leaving directory `/opt/mp3/mpg123-0.59r'
> make[1]: *** [mpg123-make] Error 2
> make[1]: Leaving directory `/opt/mp3/mpg123-0.59r'
> make: *** [linux-3dnow] Error 2
> root@erde:/opt/mp3/mpg123-0.59r >

OK, war wohl nix. Nimm die Standardversion.

> 
> Wie l��t sich feststellen, was �berfl�ssig ist, was ich �berhaupt
> nicht brauche? Ich wei� ja nicht, was die einzelnen Zeilen
Oh, diese Zeilen sind nicht an sich �berfl�ssig, sie haben blo� nix mit
deinem Problem zu tun.

> in /etc/modules.conf f�r eine Bedeutung haben.
> Was sind zum Beispiel die ganzen "alias char-major-xx"-Zeilen?

Unter UNIX ist alles eine Datei. Auch ein "Ger�t". Und Ger�te sind
entweder Blockorintiert oder Zeichenorientiert. Und sie haben alle eine
interne Nummer. Und damit man nicht immer mit dubiosen Nummern hantieren
mu� (so wie der Computer das will) und statt dessen Aussagekr�ftige Namen
verwenden kann macht man eine alias. Also: T�ne ausgeben ist f�r deinen
Computer nichts anderes als Zeichen an das zeichenorientierte Ausgabeger�t
zu schicken; wie das genau geht, das �berl�sst er einem Modul, dessen
Namen du hier angibst.


 > USB brauche ich zum Beispiel nicht. 
> In /etc/modules.conf wird wohl die Zeile
> alias char-major-240      usb-serial
> f�r die Aktivierung von USB zust�ndig sein. Oder nicht?

Nein, damit wird diesem Ger�t nur ein bestimmtes Modul zugewiesen, das
dann erst bei Bedarf geladen wird. Wenn Du also kein USB benutzt, wird
auch kein Modul geladen. Hier steht nur als Info f�r Linux: Wenn irgendwie
eine Anforderung f�r USB kommt, welches Modul nachgeladen werden mu�.


> Wenn ich die Zeile mit # deaktiviere, dann wird USB nicht 
> mehr gehen wahrscheinlich. Damit soll es aber nicht getan
> sein.
Warum willst Du, da� USB nicht mehr funktioniert?????


> "alias char-major-240      usb-serial" bezieht sich wahrscheinlich
> auf ein Modul, Library oder so. Wenn ich USB nicht brauche, dann
> kann ich doch gleich die f�r USB zust�ndigen Komponenten aus dem
> System entfernen, und nicht nur ein # vor die oben erw�hnte Zeile
> setzen. Ist doch nur unn�tiger Ballast.

Naja, wenn Dir die paar kB Festplattenplatz sooo wichtig sind, dann kannst
Du das machen. Ich glaube jedoch, du denkst immer noch in Windows-Bahnen,
wo am Anfang (und nur da) alle Treiber erstmal in den Arbeitsspeicher
gem�llt werden, das ist mitnichten so. Gib mal lsmod ein, dann siehst Du,
welche Treiber zur Zeit aktiv sind. Spa�es halber kannst Du auch mal yast2
starten, die Hardwareerkennung laufen lassen, und dann auf einer anderen
Konsole mal lsmod eingeben... das wird eine ziemlich lange Liste.


> Selbstverst�ndlich soll es nach dem Entfernen der USB-Unterst�tzung
> immer noch die M�glichkeit geben, USB wieder problemlos
> in das System einzubinden, falls ich das mal brauche.
>
Dazu l��t du die Zeilen einfach stehen.
 
> Aber nehmen wir mal an ich will ein Paket A (nur vorstellen)
> installieren.
> Ich wei� nicht, ob es schon installiert ist.
> Bisher kenne ich nur eine M�glichkeit zu �berpr�fen, ob schon was
> installiert ist, n�mlich "rpm -q PAKETNAME".
> In diesem Fall gebe ich dann "rpm -q A" ein.
> Das geht aber doch nur bei rpm-Paketen, stimmts?
> Wenn aber das Paket A aus einem tar-Paket installiert war
> (./configure  make  make install und so),
> dann zeigt ein "rpm -q PAKETNAME" keine Wirkung.
> Wie l��t es sich nun �berpr�fen, ob das Paket A schon
> installiert ist, wenn es aus einem tar-Paket installiert
> wurde?

Eigentlich gar nicht. Diese fehlende M�glichhkeit einer wirklich
effizienten Kontrolle (was, wenn jemand was woanders hininstalliert?) war
ja der Grund f�r die Entwicklung von Paketmanagern. Aber das stimmt nicht
ganz, denn igentlich ist es ganz einfach: Du h�ltst Dich bei der
Installation von Software streng an den FHS, und dann landet von dir
nachinstallierte Software fast immer unter /usr/local/<Paketname>; die
ausf�hrbaren Dateien aus diesen Paketen unter /usr/local/bin und die
Libraries unter /usr/local/lib. (usw.) Also: Du schaust einfach nach, ob
es das Verzeichnis /usr/local/A gibt... Und am besten schreibst Du dir
eine Liste, was Du alles installiert hast.

> Mu� man ein Linux-Guru sein,
> um so was zu k�nnen? Mu� man mit Linux schon mindestens f�nf Jahre
> zu tun gehabt haben, um so ein Problem zu ergr�nden und zu
> beheben? Mu� man f�nf Jahre Informatik studiert haben?
> 
Nein, ich bin kein Linux-Guru, ich benutze es auch erst seit einem, naja
seit anderthalb Jahren und ich studiere kein Informatik. Ich lese nur eine
gute Computerzeitschrift, und die ist nicht wirklich Linux-spezifisch.
Wenn Du erstmal herausgefunden hast, wie das so alles ungef�hr ist, kannst
Du dir dann jederzeit selbst helfen und im Notfall immer noch eine Frage
an die nette und hilfsbereit Linux-Gemeinde stellen. ;-)

Gru�,

Matthias.

------------------------------

Date: Mon, 21 Aug 2000 11:08:37 +0200
From: "Schmitt, Martin (Zentrale - OR AI B)" <[EMAIL PROTECTED]>
Subject: AW: [PUG] mp3 will nicht.

> Macht ja Fortschritte. In einem Jahr laeuft Dein Linux auch so wie
> Du es haben willst. Da soll noch einer sagen Linux ist nicht 
> Einsteiger freundlich. *g*

Selbsterkl�rend, Tim. Selbsterkl�rend...

:-)

- -martin

------------------------------

Date: Mon, 21 Aug 2000 18:19:11 +0200
From: =?iso-8859-1?Q?Bj=F6rn?= Pfeiffer <[EMAIL PROTECTED]>
Subject: [PUG] Smalltalk mit der Unix-Shell

Hier ein Snip aus einer C++-Mailing-Liste, heute hier hereingeschneit.

============================================================
THE LIGHTER SIDE OF COMPUTERS
============================================================
Unix Shell Humour

If you have access to Unix try these commands out:

     % cat "food in cans"
     cat: can't open food in cans

     % nice man woman
     No manual entry for woman.

     % rm God
     rm: God nonexistent

     % ar t God
     ar: God does not exist

     % ar r God
     ar: creating God

     % "How would you rate Quayle's incompetence?
     Unmatched ".

     % [Where is Elvis?
     Missing ].

     % If I had a ( for every $ the Congress spent, what
     would I have?
     Too many ('s.

     % make love
     Make: Don't know how to make love. Stop.

     % sleep with me
     bad character

     % got a light?
     No match.

     % man: why did you get a divorce?
     man:: Too many arguments.

     % !:say, what is saccharine?
     Bad substitute.

     % rm lawyer-ethics
     rm: lawyer-ethics nonexistent

     % ^How did the sex change^ operation go?
     Modifier failed.


- --> aus:

============================================================
 20th August 2000                             Issue 2000-28
                     Subscribers: 3208
============================================================

This newsletter is never sent unsolicited.  To be removed
from the mailing list, send any email to:
mailto:[EMAIL PROTECTED]

To subscribe, send any email to:
mailto:CodeCraft-subscribe@topicX-Mozilla-Status: 0009nswert!

------------------------------

Date: Mon, 21 Aug 2000 22:15:39 +0200
From: Tim Gesekus <[EMAIL PROTECTED]>
Subject: Re: [PUG] Smalltalk mit der Unix-Shell

On Mon, Aug 21, 2000 at 06:19:11PM +0200, Bj�rn Pfeiffer wrote:
> Hier ein Snip aus einer C++-Mailing-Liste, heute hier hereingeschneit.
>      % make love
>      Make: Don't know how to make love. Stop.
Geht heute leider nicht mehr.
Frueher war das dann eigentlich:
make fire
Make: Don't know how to make fire
why
No match

Aber mein Liebling ist immernoch tar
 tar -cf lala.tgz 
 tar: Cowardly refusing to create an empty archive

Und irgendwer meint immer:
 You don't exist, go away.

tim

- -- 
Tim Gesekus  ****   eMail: Tim Gesekus <[EMAIL PROTECTED]>
****************************************************************
hm, ist mir zu teuer ich nehm Schlecker-Hausmarke mit nem Schuss
Weichspueler, kriegt man ne schoene Stimme von.     H.D. 
****************************************************************

------------------------------

End of [EMAIL PROTECTED] - Digest V1 #84
***********************************

--------------------------------------------------------------------------
Digest von "[EMAIL PROTECTED]" - http://www.pug.org

Antwort per Email an