• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

[solved] Probleme mit Cdemu

CRYSTAL

Member
Hallo bin ziemlich neu auf Suse 9.3 (6 Monate) bin zufriedener denn je.

Nur hab ich ein Problem mit Images in ".bin" Form. Habe mir bereits Cdemu installiert von RPM search so jetzt sagt meine Console beim aufruf von #cdemu das mir das #libcdemu fehlt... So was mache ich falsch?? Sollte ich mal #bin2iso versuchen oder ist cdemu für das besser geeignet

mfg CRYSTAL
 
OP
CRYSTAL

CRYSTAL

Member
Hallo ich glaub ich stell mich schon manchmal doof an.. bitte verzeiht hat den keiner ne Antwort? weil das ist ein .rpm aus der Seite RPM search gewesen für Suse 9.3 jetzt wenn ich in das gewünschte Verzeichniss wechsle und #cdemu filename.bin# eingebe bekomme ich den Fehler das die #libcdemu# fehlt nur finde ich diese weder im Yast Paketmanager noch im Web bei RPM search... habe schon auf Packman geguckt da gibt es da auch nicht. Ich weiß bin noch ein DAU auf Linux....

mfg CRYSTAL
 
OP
CRYSTAL

CRYSTAL

Member
Danke danke doch ich habe noch nie erfolgreich kompiliert.. wie mach ich das in diesem Fall?
 

whois

Ultimate Guru
Hi CRYSTAL

In der Regel ist eine readme oder lesemich Datei da die dir zeigt wie du das machst.

Für den Fall das nichts das ist. :wink:

./configure
make
make install
 
OP
CRYSTAL

CRYSTAL

Member
ok habe mit cd/Verzeichnis ins gwünschte Verzeichniss gewechselt
danach habe ich #./configure danch #make danach #make install eingegeben und es hat leider nicht funktioniert ich bekam eine fehlermeldung..
 
OP
CRYSTAL

CRYSTAL

Member
So jetzt habe ich es entpackt bin in die Console rein mich als Root angemeldet mit #cd /Verzeichniss ins richtige Verzeichniss gewechselt das klappte noch. Doch dann als ich #./cofigure angebe sagt er datei oder Verzeichniss nicht gefunden...
 
OP
CRYSTAL

CRYSTAL

Member
Da steht schon was in der Anleitung die dabei ist das man bevor man #make ausführt irgendwas mit der Kernel machen soll doch was soll ich mit dem Kernel tun??? Kann denn keiner helfen?
 
Moin CRYSTAL,

was steht denn da nun genau? Sorry, aber irgendwie ist meine Glaskugel heute beschlagen, daher klappt das mit dem Gedankenlesen auch nicht so recht!
 
OP
CRYSTAL

CRYSTAL

Member
Ich weiß ... aber ich bin auf dem richtigen Weg.. wie kann ich das nun entpackte cdemu file rrichtig kompilieren? mein erster Fehler ist der das ich mit der .Install Anleitung nicht klarkomme da steht etwas von dem drinn das ich etwas mit der Kernel tun soll.. nur ich weiß nicht was..

naja is schwer aber ich wills ja lernen weiß keiner nen Rat???
 
OP
CRYSTAL

CRYSTAL

Member
Ok also das hier steht da drinnen....


#***************************************************************************
# INSTALL - description
# -------------------
# copyright : (C) 2003 by Robert Penz
# email : robert.penz@outertech.com
#***************************************************************************

#***************************************************************************
#* *
#* This program is free software; you can redistribute it and/or modify *
#* it under the terms of the GNU General Public License as published by *
#* the Free Software Foundation; either version 2 of the License, or *
#* (at your option) any later version. *
#* *
#***************************************************************************

The install is quite simple, so that currently there is no automatic install.

#*#*#*#*#*#
#*# 1 #*#
extract the archive, what you apparently already did ;-)

#*#*#*#*#*#
#*# 2 #*#
you need the source of your current running kernel.
/lib/modules/`uname -r`/build/include needs to point at it. if you're not sure if it points
to the righ kernel just type: ls -la /lib/modules/`uname -r`/build if its the correct kernel
source all is ok. ;-)

#*#*#*#*#*#
#*# 3 #*#
make

Depending on your config of the gcc, you get non or many warnings, but even if you get
some, only one is in the cdemu module. e.g. on a Suse 8.2 with the suse standard kernel source
extracted to /usr/src/linux/ (/lib/modules/`uname -r`/build/ points to that) it looks this way.

************************************************************
In file included from /usr/src/linux/include/linux/tqueue.h:19,
from /usr/src/linux/include/linux/aio.h:4,
from /usr/src/linux/include/linux/fs.h:201,
from /usr/src/linux/include/linux/capability.h:17,
from /usr/src/linux/include/linux/binfmts.h:5,
from /usr/src/linux/include/linux/sched.h:10,
from cdemu.c:68:
/usr/src/linux/include/asm/system.h: In function `__set_64bit_var':
/usr/src/linux/include/asm/system.h:189: warning: dereferencing type-punned pointer will break strict-aliasing rules
/usr/src/linux/include/asm/system.h:189: warning: dereferencing type-punned pointer will break strict-aliasing rules
In file included from cdemu.c:70:
/usr/src/linux/include/linux/file.h: In function `fcheck_files':
/usr/src/linux/include/linux/file.h:37: warning: comparison between signed and unsigned
/usr/src/linux/include/linux/file.h: In function `fcheck':
/usr/src/linux/include/linux/file.h:50: warning: comparison between signed and unsigned
/usr/src/linux/include/linux/file.h: In function `__put_unused_fd':
/usr/src/linux/include/linux/file.h:62: warning: comparison between signed and unsigned
In file included from /usr/src/linux/include/linux/blk.h:4,
from cdemu.c:75:
/usr/src/linux/include/linux/blkdev.h: In function `blk_queue_bounce':
/usr/src/linux/include/linux/blkdev.h:212: warning: comparison between signed and unsigned
/usr/src/linux/include/linux/blkdev.h: In function `blk_finished_io':
/usr/src/linux/include/linux/blkdev.h:348: warning: comparison between signed and unsigned
cdemu.c: In function `ce_findtrack':
cdemu.c:241: warning: comparison between signed and unsigned

************************************************************

if you get an error message (not a warning) like

cdemu.c: In function `ce_transfer':
cdemu.c:***: too few arguments to function `do_generic_file_read'

you most likely have a new redhat kernel.

you just need to change one line in the module source

search for this 2 lines
do_generic_file_read(vc->vc_backing_file, &position,
&desc, vc_read_actor);

and add a ",0" to the second line
&desc, vc_read_actor, 0);


and as root

#*#*#*#*#*#
#*# 4 #*#
make install

#*#*#*#*#*#
#*# 5 #*#
now we can load the kernel module just with typing

modprobe cdemu

no message should be given by this command

for you Debian users (maybe others), you might have to run `update-modules` first

#*#*#*#*#*#
#*# 6 #*#
after the install you just need to call cdemu to get the help screen of the userspace program

if you're using devfs, then nodes will show up in /dev/cdemu/ automagically. if you're using
udev, you might want to add this to /etc/udev/rules.d/99cdemu:
KERNEL="cdemu[0-9]*", NAME="cdemu/%n"
otherwise you'll get a bunch of nodes showing up in /dev/ instead of /dev/cdemu/

ps: Any bug reports, comments, feature requests wished.


so mit dem komme ich als Neuling allerdings nicht klar
 
CRYSTAL schrieb:
Ok also das hier steht da drinnen....

#*# 1 #*#
extract the archive, what you apparently already did ;-)
archive entpacken
#*# 2 #*#
you need the source of your current running kernel.
/lib/modules/`uname -r`/build/include needs to point at it. if you're not sure if it points
to the righ kernel just type: ls -la /lib/modules/`uname -r`/build if its the correct kernel
source all is ok. ;-)
Du brauchst den Quellcode deines derzeit laufenden Kernels. /lib/modules/`uname -r`/build/include muß darauf verweisen. Wenn Du nicht sicher bist das es auf den richtigen Kernel verweist gib: "ls -la /lib/modules/`uname -r`/build" ein, wenn es der richtige Kernel Quellcode ist, ist alles ok ;-)
Was der Krempel mit dem /build soll ist mir nicht ganz klar, aber wenn Du "uname -r" eingibst muß der gleiche 'Name' rauskommen wie bei "ls -la /lib/modules".

Ohne Worte

Dann folgen ein paar Beschreibungen was sich wie äußern kann. Das kannst Du selber übersetzen.

and as root

#*# 4 #*#
make install
Als root "make install" ausführen.
#*# 5 #*#
now we can load the kernel module just with typing

modprobe cdemu

Nun lädst Du das kernelmodul mit "modprobe cdemu"
no message should be given by this command
Es sollten keine Meldungen durch diesen Befehl kommen.
for you Debian users (maybe others), you might have to run `update-modules` first
Debiannutzer (evtl. andere auch) sollten erst den Befehl "update-modules" ausführen.

Den Rest übersetz ich dir nicht! Das wichtigste ist also das Du auch die Sourcen deines Kernels installiert hast, was standardmäßig nicht der Fall ist, also nachinstallieren.
 
OP
CRYSTAL

CRYSTAL

Member
Ich komm mir jetzt besonders doof vor.. Aber ich frage wie ich die Kernel Sourcen nachinstalliere? bzw was kann ich beim 2ten als logische funktion in meine Konsole reinschreiben.. bzw wie sehen die Konsolen Befehle aus um das zu installieren?

bin grad verzweifelt :(
 

Gimpel

Guru
CRYSTAL schrieb:
Sollte ich mal #bin2iso versuchen oder ist cdemu für das besser geeignet

mfg CRYSTAL

Um mal an den Anfang des Problems zurückzukehren...
wenn du bin2iso parad hast, dann ist die Sache super einfach:
mit bin2iso ein .iso erstellen, und mit mount mounten ;)

nix kernel-source, nix kompilieren usw...

---> http://www.linuxeinsteiger.info/anleitungen/media/media14.php
 
Moin CRYSTAL,

Du bist schon ein echtes Problemkind :wink: :lol:
Kernelsourcen kannst Du von deiner DVD oder aus dem Netz von SuSE/Novell per yast nachinstallieren.
 
OP
CRYSTAL

CRYSTAL

Member
Tut mir ja echt leid das ich Anfänger bin. Aber i habe gehofft so wie ich es gelernt habe wenn ich etwas nicht weiß, einfach mal jemand danach zu fragen. Doch mit dem Übersetzen des textes ins deutsche ist mir leider auch nicht geholfen, kann auch ein wenig englisch, soweit hab ich es auch kapiert. Nur wie ich das anstelle das richtig zu installieren weiß ich bis jetzt noch nicht.
 
Oben