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

IA32-libs

peddy76

Newbie
Hallo,

ich bin openSuse Neuling und möchte eine ISDN Karte installieren. Den Treiber habe ich vom Hersteller der Karte bekommen, aber leider tritt ein Fehler beim Installieren auf.

Beim Support sagte man mir ich soll die ia32-libs installieren, da ich ein 64 Bit System installiert habe und die Treiber nur unter 32 Bit laufen. Jetzt suche ich verzweifelt nach einem Paket mit diesem Namen, aber Yast liefert mir keins. Auch beim googeln konnte ich kein Hinweis finden, wie das Paket unter Suse heißen könnte.

Habt ihr da eine Idee?
 
OP
P

peddy76

Newbie
Das ist eine Primux 4S0

Code:
  make -C /lib/modules/2.6.31.5-0.1-desktop/build SUBDIRS=/usr/lib/primux/build modules                             
   make[1]: Entering directory `/usr/src/linux-2.6.31.5-0.1-obj/x86_64/desktop'                                      
   make -C ../../../linux-2.6.31.5-0.1 O=/usr/src/linux-2.6.31.5-0.1-obj/x86_64/desktop/. modules
     CC [M]  /usr/lib/primux/build/linux.o
   make[1]: Leaving directory `/usr/src/linux-2.6.31.5-0.1-obj/x86_64/desktop'
   /usr/lib/primux/build/linux.c: In function âFSAddObjectâ:
   /usr/lib/primux/build/linux.c:2586: error: âstruct task_structâ has no member named âfsuidâ
   /usr/lib/primux/build/linux.c:2587: error: âstruct task_structâ has no member named âfsgidâ
   /usr/lib/primux/build/linux.c: In function âLeaveProtectionâ:
   /usr/lib/primux/build/linux.c:2737: error: request for member âwrite_wakeupâ in something not a structure or union
   /usr/lib/primux/build/linux.c: In function âttyCallbackâ:
   /usr/lib/primux/build/linux.c:2780: error: request for member âwrite_wakeupâ in something not a structure or union
   /usr/lib/primux/build/linux.c:2783: error: request for member âwrite_wakeupâ in something not a structure or union
   /usr/lib/primux/build/linux.c:2788: error: request for member âreceive_bufâ in something not a structure or union
   /usr/lib/primux/build/linux.c:2808: error: request for member âreceive_bufâ in something not a structure or union
   /usr/lib/primux/build/linux.c: In function âctty_ioctlâ:
   /usr/lib/primux/build/linux.c:3051: error: implicit declaration of function ân_tty_ioctlâ
   /usr/lib/primux/build/linux.c: In function âTTYInitializeâ:
   /usr/lib/primux/build/linux.c:3129: error: âstruct tty_driverâ has no member named âopenâ
   /usr/lib/primux/build/linux.c:3130: error: âstruct tty_driverâ has no member named âcloseâ
   /usr/lib/primux/build/linux.c:3131: error: âstruct tty_driverâ has no member named âwriteâ
   /usr/lib/primux/build/linux.c:3132: error: âstruct tty_driverâ has no member named âflush_charsâ
   /usr/lib/primux/build/linux.c:3133: error: âstruct tty_driverâ has no member named âchars_in_bufferâ
   /usr/lib/primux/build/linux.c:3134: error: âstruct tty_driverâ has no member named âioctlâ
   /usr/lib/primux/build/linux.c:3135: error: âstruct tty_driverâ has no member named âthrottleâ
   /usr/lib/primux/build/linux.c:3136: error: âstruct tty_driverâ has no member named âunthrottleâ
   /usr/lib/primux/build/linux.c:3137: error: âstruct tty_driverâ has no member named âstopâ
   /usr/lib/primux/build/linux.c:3138: error: âstruct tty_driverâ has no member named âstartâ
   /usr/lib/primux/build/linux.c:3148: error: âstruct tty_driverâ has no member named ârefcountâ
   make[4]: *** [/usr/lib/primux/build/linux.o] Error 1
   make[3]: *** [_module_/usr/lib/primux/build] Error 2
   make[2]: *** [sub-make] Error 2
   make[1]: *** [all] Error 2
   make: *** [default] Error 2

Das Problem ist, das der Treiber für 32 Bit geschreiben wurde. Man kann ihn aber auch unter 64 Bit installieren, wenn die nötigen Libs installiert sind.
 
OP
P

peddy76

Newbie
Auf der Homepage des Herstellers habe ich auch das gefunden:
Installationsprobleme unter Linux 64 Bit
Sollte Sie Probleme bei der Installation des PrimuX Treibers unter Linux 64 Bit Distributionen haben, so stellen Sie bitte sicher, dass die Pakete für 32 Bit Anwendungen installiert sind, da die PrimuX Installation als 32 Bit Anwendung ausgeführt wird.
 

mkossmann

Member
peddy76 schrieb:
Das ist eine Primux 4S0

Code:
  make -C /lib/modules/2.6.31.5-0.1-desktop/build SUBDIRS=/usr/lib/primux/build modules                             
   make[1]: Entering directory `/usr/src/linux-2.6.31.5-0.1-obj/x86_64/desktop'                                      
   make -C ../../../linux-2.6.31.5-0.1 O=/usr/src/linux-2.6.31.5-0.1-obj/x86_64/desktop/. modules
     CC [M]  /usr/lib/primux/build/linux.o
   make[1]: Leaving directory `/usr/src/linux-2.6.31.5-0.1-obj/x86_64/desktop'
   /usr/lib/primux/build/linux.c: In function âFSAddObjectâ:
   /usr/lib/primux/build/linux.c:2586: error: âstruct task_structâ has no member named âfsuidâ
   /usr/lib/primux/build/linux.c:2587: error: âstruct task_structâ has no member named âfsgidâ
   /usr/lib/primux/build/linux.c: In function âLeaveProtectionâ:
   /usr/lib/primux/build/linux.c:2737: error: request for member âwrite_wakeupâ in something not a structure or union
   /usr/lib/primux/build/linux.c: In function âttyCallbackâ:
   /usr/lib/primux/build/linux.c:2780: error: request for member âwrite_wakeupâ in something not a structure or union
   /usr/lib/primux/build/linux.c:2783: error: request for member âwrite_wakeupâ in something not a structure or union
   /usr/lib/primux/build/linux.c:2788: error: request for member âreceive_bufâ in something not a structure or union
   /usr/lib/primux/build/linux.c:2808: error: request for member âreceive_bufâ in something not a structure or union
   /usr/lib/primux/build/linux.c: In function âctty_ioctlâ:
   /usr/lib/primux/build/linux.c:3051: error: implicit declaration of function ân_tty_ioctlâ
   /usr/lib/primux/build/linux.c: In function âTTYInitializeâ:
   /usr/lib/primux/build/linux.c:3129: error: âstruct tty_driverâ has no member named âopenâ
   /usr/lib/primux/build/linux.c:3130: error: âstruct tty_driverâ has no member named âcloseâ
   /usr/lib/primux/build/linux.c:3131: error: âstruct tty_driverâ has no member named âwriteâ
   /usr/lib/primux/build/linux.c:3132: error: âstruct tty_driverâ has no member named âflush_charsâ
   /usr/lib/primux/build/linux.c:3133: error: âstruct tty_driverâ has no member named âchars_in_bufferâ
   /usr/lib/primux/build/linux.c:3134: error: âstruct tty_driverâ has no member named âioctlâ
   /usr/lib/primux/build/linux.c:3135: error: âstruct tty_driverâ has no member named âthrottleâ
   /usr/lib/primux/build/linux.c:3136: error: âstruct tty_driverâ has no member named âunthrottleâ
   /usr/lib/primux/build/linux.c:3137: error: âstruct tty_driverâ has no member named âstopâ
   /usr/lib/primux/build/linux.c:3138: error: âstruct tty_driverâ has no member named âstartâ
   /usr/lib/primux/build/linux.c:3148: error: âstruct tty_driverâ has no member named ârefcountâ
   make[4]: *** [/usr/lib/primux/build/linux.o] Error 1
   make[3]: *** [_module_/usr/lib/primux/build] Error 2
   make[2]: *** [sub-make] Error 2
   make[1]: *** [all] Error 2
   make: *** [default] Error 2

Das Problem ist, das der Treiber für 32 Bit geschreiben wurde. Man kann ihn aber auch unter 64 Bit installieren, wenn die nötigen Libs installiert sind.

Diese Fehlermeldungen sehen aber danach aus, als würde der Treiber nicht zur verwendeten Kernelversion passen. Nach etwas googeln bin ich der Meinung das der Treiber nur bis Kernelversion 2.6.25 ohne Änderungen funktioniert. In 2.6.26 wurde dann struct tty_driver so geändert,das diese Fehlermeldungen zu erwarten sind.
 
OP
P

peddy76

Newbie
Meine erster Gedanke war auch, dass der Kernel von Suse 11.2 zu aktuell ist. Daher habe ich auch mal nachgesehen, ob ich einen älteren finde, leider ohne Erfolg. Da bliebe wohl nur selber kompilieren, dummerweise verwende ich auch ext4 und deshalb darf ich auch keinen zu alten Kernel nehmen.

Generell sollte aber schon etwas > 2.6.25 funktionieren. Auf der Herstellerseite steht das:
Verwendung von PrimuX USB unter Linux ab Kernel 2.6.25
Unter Kernel Versionen 2.6.25 und höher wird die USB Kernel Mode Schnittstelle für Closed Source Treiber nicht mehr zur Verfügung gestellt. Der PrimuX Treiber ist aber aufgrund der Unterstützung der diversen anderen PrimuX Adapter ein Kernelspace Treiber und lässt sich nicht ohne weiteres in einen Userspace Treiber umwandeln. Da die Gerdes AG die Entscheidung der Linux Kernel Entwickler respektiert, ist der USB Support im PrimuX Treiber für Kernel Versionen ab 2.6.25 deaktiviert.

Alternativ können Sie anstelle der PrimuX USB eine PrimuX S0 verwenden. Vom Preis und den Funktionen unterscheiden sich die beiden Adapter nicht. Eine zweite Möglichkeit wäre, einen älteren Kernel (<2.6.25) zu verwenden, da die PrimuX USB mit den älteren Versionen uneingeschränkt kompatibel ist.

Ob der Support für Primux recht hat, kann ich erst überprüfen, wenn ich ein ia32-lib Paket gefunden habe. Unter openSuse muss es diese Lib, wenn auch unter einen anderen Namen doch auch geben, oder?
 

mkossmann

Member
peddy76 schrieb:
Meine erster Gedanke war auch, dass der Kernel von Suse 11.2 zu aktuell ist. Daher habe ich auch mal nachgesehen, ob ich einen älteren finde, leider ohne Erfolg. Da bliebe wohl nur selber kompilieren, dummerweise verwende ich auch ext4 und deshalb darf ich auch keinen zu alten Kernel nehmen.

Generell sollte aber schon etwas > 2.6.25 funktionieren. Auf der Herstellerseite steht das:
Verwendung von PrimuX USB unter Linux ab Kernel 2.6.25
Unter Kernel Versionen 2.6.25 und höher wird die USB Kernel Mode Schnittstelle für Closed Source Treiber nicht mehr zur Verfügung gestellt. Der PrimuX Treiber ist aber aufgrund der Unterstützung der diversen anderen PrimuX Adapter ein Kernelspace Treiber unddigitalfernsehen.de/forum/digital-tv-fuer-einsteiger/238722-digitales-kabel-tv-aufnehmen.html lässt sich nicht ohne weiteres in einen Userspace Treiber umwandeln. Da die Gerdes AG die Entscheidung der Linux Kernel Entwickler respektiert, ist der USB Support im PrimuX Treiber für Kernel Versionen ab 2.6.25 deaktiviert.
Das heißt aber nur das die USB Version sicher nicht mit >= 2.6.25 läuft. Den Schluss, das die nicht USB Versionen dann mit >2.6.25 laufen darfst du aber nicht ziehen.

peddy76 schrieb:
Ob der Support für Primux recht hat, kann ich erst überprüfen, wenn ich ein ia32-lib Paket gefunden habe. Unter openSuse muss es diese Lib, wenn auch unter einen anderen Namen doch auch geben, oder?
Der Support für Primux meint damit die Pakete mit -32bit im Namen. Die kannst du installieren , indem du im Yast Software Installer das Meta-Paket patterns-OpenSUSE-32bit installierst.
 
Oben