SuSE 9.0 + sensors

Ylin

Ylin

hm... ja
Ich versuch zur Zeit ein superkaramba-Theme mit Temperatur und Lüftergeschwindigkeit einzurichten. Läuft auch, bis halt eben auf Temperatur- und Lüfteranzeuge.

Bei SuSE ist ja auch schon das Paket "sensors" dabei. Ist auch installiert und per apt4rpm geupdated.
Aber wenn ich "/usr/sbin/sensors-detect" ausführe, kommt erstmal das Standardzeug und dann diese Fehlermeldungen:

"BIOS vendor (ACPI): Nvidia
Could not find dmidecode, which should have been installed with lm_sensors.
Runing dmidecode would help us determining your system vendor, which allows
safer operations. Please provide one of the following:
/usr/local/sbin/dmidecode
/usr/sbin/dmidecode
You can still go on, but you are encouraged to fix the problem first.

We can start with probing for (PCI) I2C or SMBus adapters.
You do not need any special privileges for this.
Do you want to probe now? (YES/no):
Probing for PCI bus adapters...
Use driver `i2c-nforce2' for device 00:01.1: nVidia Corporation nForce2 SMBus (MCP)
Probe succesfully concluded.

We will now try to load each adapter module in turn.
Load `i2c-nforce2' (say NO if built into your kernel)? (YES/no):
modprobe: Can't locate module i2c-nforce2
Loading failed... skipping."



Wenn ich aber versuche, i2c-2.8.3 noch mal neu zu kompilieren, bleibt er mit dieser Fehlermeldung stehen:

"kernel/i2c-philips-par.c: At top level:
kernel/i2c-philips-par.c:142: error: initializer element is not constant
kernel/i2c-philips-par.c:142: error: (near initialization for `bit_lp_data.timeout')
kernel/i2c-philips-par.c:151: error: initializer element is not constant
kernel/i2c-philips-par.c:151: error: (near initialization for `bit_lp_data2.timeout')
make: *** [kernel/i2c-philips-par.o] Fehler 1"



Und wenn ich versuche, trotzdem lm_sensors 2.8.3 zu kompilieren, bleibt er hier stehen:

"kernel/busses/i2c-hydra.c: At top level:
kernel/busses/i2c-hydra.c:112: error: initializer element is not constant
kernel/busses/i2c-hydra.c:112: error: (near initialization for `bit_hydra_data.timeout')
make: *** [kernel/busses/i2c-hydra.o] Fehler 1"


Ich hab n Asus A7N8X Deluxe Mainboard (nforce2).



Weiß da einer weiter?
 
Ich sollt vielleicht auch noch mal sagen, dass nach einem Hinweis in den Support Tickets mal die phillips-par.o aus der Makefile.mk von i2c auskommentiert habe. Dann hing er aber beim nächsten, und dass ging dann immer so weiter, bis er irgendwann einfach stehen geblieben ist. :/
 
Hi,
Ich habe das gleiche Problem mit der SuSE 9 Distribution, wenn ich versuche i2c zu kompilieren. Und zwar genau immer dann wenn HZ zum Initialisieren einer static sructure verwendet wird, z.B.:

Code:
static struct i2c_algo_bit_data bit_lp_data = {
        .setsda         = bit_lp_setsda,
        .setscl         = bit_lp_setscl,
        .getsda         = bit_lp_getsda,
        .getscl         = bit_lp_getscl,
        .udelay         = 80,
        .mdelay         = 80,
        .timeout        = HZ
};

was dann zu Deiner Fehlermeldung führt:

kernel/i2c-philips-par.c:142: error: initializer element is not constant

Der Grund: SuSE hat den 2.4.21 Standard-Kernel gepatcht. Im Standard-Kernel scheint HZ eine konstante Grösse zu sein, während HZ im SuSE-Kernel als Funktion definiert ist (siehe /usr/src/linux/include/linux/hz.h).

Code:
static inline unsigned long get_hz(void)
.
.
#define HZ get_hz()

Frag mich aber bloss nicht, wie das nun im Detail funktioniert... ;)
Lange Rede, kurzer Sinn. Um das Paket zu kompilieren, musst Du in dem Quelltext "HZ" mit "100" ersetzen, aber nur dann, wenn "HZ" zur Initialisierung benutzt wird (s.o.). Dann funktioniert auch alles. Quelle: http://archives.andrew.net.au/lm-sensors/msg06032.html
Ich hoffe, dass hilft Dir weiter,

Frank
 
Danke, das hat geholfen. Allerdings hat er jetzt n anderes Problem.

"In file included from /lib/modules/2.4.21-166-athlon/build/include/linux/list.h:3,
from /lib/modules/2.4.21-166-athlon/build/include/linux/module.h:12,
from kernel/i2c-pport.c:30:
/lib/modules/2.4.21-166-athlon/build/include/asm/system.h: In function `__set_64bit_var':
/lib/modules/2.4.21-166-athlon/build/include/asm/system.h:189: Warnung: dereferencing type-punned pointer will break strict-aliasing rules
/lib/modules/2.4.21-166-athlon/build/include/asm/system.h:189: Warnung: dereferencing type-punned pointer will break strict-aliasing rules"

Damit bricht er die Kompilation ab. Mal gucken, was ich da noch machen kann. Aber im Moment hab ich ja auch noch andere Probs. ;) Siehe hier.
 

Ähnliche Themen

Zugriff Ubuntu 16.04. auf Freigabe 18.04. LTS nicht möglich

Displayport + externer Monitor zeigt bei startx nichts erst bei DVI

Ubuntu X / dbus problem

Modulfehler?

g++ kompilieren schlägt fehl

Zurück
Oben