[
IntSuseFr ] [
IntSuseES ] [
Deutsch ] [
In English ]
Problème de compilation pour
SuSE 9.0
http://fast800.tuxfamily.org/forums/read.php?f=1&i=7780&t=7660 En Français
http://foro.eagle-usb.org/viewtopic.php?t=398 En Español
Problème de redéfinition de structure
eagle 1.0.4 et suse 9.0 :
adictrl.c:184: error: redefinition of `struct usb_device_descriptor'
Pour J.Alberto, l'error adictrl.c:184: error: redefinition of `struct usb_device_descriptor' se résoud en éditant le adictrl.c et en substituant aux lignes 184 à 200 les suivantes :
typedef struct
{
uint8_t bLength;
uint8_t bDescriptorType;
uint16_t bcdUSB;
uint8_t bDeviceClass;
uint8_t bDeviceSubClass;
uint8_t bDeviceProtocol;
uint8_t bMaxPacketSize0;
uint16_t idVendor;
uint16_t idProduct;
uint16_t bcdDevice;
uint8_t iManufacturer;
uint8_t iProduct;
uint8_t iSerialNumber;
uint8_t bNumConfigurations;
} __attribute__((packed)) usb_dev_desc_t;
Ainsi, ça compile sans problème. => à checker à quoi ça sert...
Utiliser le kernel par défaut et non celui pour l'athlon (ça n'a pas marché) : chercher dans yast k_default pour installation et k_athlon pour désinstallation, il demande les CD d'installation et un reboot suffit.
Problème d'include
from AdiUsbAdslDriver.c:32:
/usr/include/linux/version.h:2:2: #error "======================================================="
/usr/include/linux/version.h:3:2: #error "You should not include /usr/include/{linux,asm}/ header"
/usr/include/linux/version.h:4:2: #error "files directly for the compilation of kernel modules."
/usr/include/linux/version.h:5:2: #error " "
/usr/include/linux/version.h:6:2: #error "glibc now uses kernel header files from a well-defined"
/usr/include/linux/version.h:7:2: #error "working kernel version (as recommended by Linus Torvalds)"
/usr/include/linux/version.h:8:2: #error "These files are glibc internal and may not match the"
/usr/include/linux/version.h:9:2: #error "currently running kernel. They should only be"
/usr/include/linux/version.h:10:2: #error "included via other system header files - user space"
/usr/include/linux/version.h:11:2: #error "programs should not directly include or"
/usr/include/linux/version.h:12:2: #error " as well."
/usr/include/linux/version.h:13:2: #error " "
/usr/include/linux/version.h:14:2: #error "To build kernel modules please do the following:"
/usr/include/linux/version.h:15:2: #error " "
/usr/include/linux/version.h:16:2: #error " o Have the kernel sources installed"
/usr/include/linux/version.h:17:2: #error " "
/usr/include/linux/version.h:18:2: #error " o Make sure that the symbolic link"
/usr/include/linux/version.h:19:2: #error " /lib/modules/`uname -r`/build exists and points to"
/usr/include/linux/version.h:20:2: #error " the matching kernel source directory"
/usr/include/linux/version.h:21:2: #error " "
/usr/include/linux/version.h:22:2: #error " o Configure kernel sources:"
/usr/include/linux/version.h:23:2: #error " - cd /usr/src/linux"
/usr/include/linux/version.h:24:2: #error " - make mrproper"
/usr/include/linux/version.h:25:2: #error " - make cloneconfig"
/usr/include/linux/version.h:26:2: #error " - make dep"
/usr/include/linux/version.h:27:2: #error " "
/usr/include/linux/version.h:28:2: #error " o When compiling, make sure to use the following"
/usr/include/linux/version.h:29:2: #error " compiler option to use the correct include files:"
/usr/include/linux/version.h:30:2: #error " "
/usr/include/linux/version.h:31:2: #error " -I/lib/modules/`uname -r`/build/include"
/usr/include/linux/version.h:32:2: #error " "
/usr/include/linux/version.h:33:2: #error " instead of"
/usr/include/linux/version.h:34:2: #error " "
/usr/include/linux/version.h:35:2: #error " -I/usr/include/linux"
/usr/include/linux/version.h:36:2: #error " "
/usr/include/linux/version.h:37:2: #error " Please adjust the Makefile accordingly."
/usr/include/linux/version.h:38:2: #error "======================================================="
In file included from Adiutil.h:64,
from AdiUsbAdslDriver.c:32:
Macros.h:29:40: missing binary operator before token "("
In file included from /usr/src/linux/include/linux/module.h:299,
from AdiUsbAdslDriver.c:33:
et ça se termine :
#error "======================================================="
In file included from AdiUsbAdslDriver.c:33:
/usr/src/linux/include/linux/module.h:301: error: parse error before "UTS_RELEASE"
make[1]: *** [AdiUsbAdslDriver.o] Error 1
make[1]: Leaving directory `/usr/src/eagle-1.0.4/driver'
make: *** [build] Error 2
linux:/usr/src/eagle-1.0.4 #
=> la résolution est simple :
soit création du lien /usr/src/linux vers les sources du kernel courant (classique),
soit suivre ce qui est décrit dans l'erreur : modifier le makefile avec KERNELSRC = /lib/modules/$(shell uname -r)/build (pareil que pour Red Hat 9 et Fedora)
Automatisation au démarrage
issu du forum par
MightyBob :
http://fast800.tuxfamily.org/forums/read.php?f=1&i=8834&t=8834
Je viens de faire un joli petit script de démarrage dans la pure tradition
SuSE...
Vous le trouverez à l'adresse suivate :
ftp://simpson.livernais.net/adiusbadsl
Une fois chargés les deux fichiers, taper les commandes suivantes :
# cp adiusbadsl.sysconfig /etc/sysconfig/adiusbadsl
# cp adiusbadsl.rc /etc/init.d/adiusbadsl
# ln -s /etc/init.d/adiusbadsl /sbin/rcadiusbadsl
# insserv
Vérifiez que les liens sont bien faits dans /etc/init.d/rc*.d avec la commande suivante : ls -l /etc/init.d/rc*.d/*adiusbadsl Si ce n'est pas le cas, il faut jouer avec yast runlevel pour qu'il les mette en place proprement !!!
Merci de me faire un retour d'expérience que je puisse les améliorer encore un peu !
A vous de jouer....