Précédent   Forum des professionnels en informatique > Systèmes > Linux > Système
Système Vos questions autour de l'administration système
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 22/06/2011, 16h04   #1
Nouveau Membre du Club
 
Inscription : décembre 2010
Messages : 26
Détails du profil
Informations forums :
Inscription : décembre 2010
Messages : 26
Points : 34
Points : 34
Par défaut Utilisation de lib dynamique lors de la création d'un module

Bonjour,

Je me permets de vous demander de l'aide car je suis en train de créer un module linux et dans ce module j'ai besoin d'utiliser certaines fonctions appartenant à une lib, cette lib est disponible en .a et .so. Lors du lançement du make, il trouve bien la lib mais au moment du linkage il donne des undefined reference pour toutes les fonctions que la lib que j'inclut utilise. Un peu comme s'il avait besoin d'une lib pour faire la lib. Le .a est déjà compilé, je veux juste l'utiliser lors du linkage.

Voici la trace de la compilation :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
aurelien@aurelien:~/Bureau/wii$ make
make -C /lib/modules/2.6.38-8-generic/build M=/home/aurelien/Bureau/wii
make[1]: entrant dans le répertoire « /usr/src/linux-headers-2.6.38-8-generic »
  CC [M]  /home/aurelien/Bureau/wii/wiimote.o
  LD [M]  /home/aurelien/Bureau/wii/wiimoteModule.o
  Building modules, stage 2.
  MODPOST 1 modules
WARNING: "free" [/home/aurelien/Bureau/wii/wiimoteModule.ko] undefined!
WARNING: "close" [/home/aurelien/Bureau/wii/wiimoteModule.ko] undefined!
WARNING: "__vsnprintf_chk" [/home/aurelien/Bureau/wii/wiimoteModule.ko] undefined!
WARNING: "str2ba" [/home/aurelien/Bureau/wii/wiimoteModule.ko] undefined!
WARNING: "__errno_location" [/home/aurelien/Bureau/wii/wiimoteModule.ko] undefined!
WARNING: "stderr" [/home/aurelien/Bureau/wii/wiimoteModule.ko] undefined!
WARNING: "asin" [/home/aurelien/Bureau/wii/wiimoteModule.ko] undefined!
WARNING: "ba2str" [/home/aurelien/Bureau/wii/wiimoteModule.ko] undefined!
WARNING: "__memcpy_chk" [/home/aurelien/Bureau/wii/wiimoteModule.ko] undefined!
WARNING: "__vfprintf_chk" [/home/aurelien/Bureau/wii/wiimoteModule.ko] undefined!
WARNING: "bind" [/home/aurelien/Bureau/wii/wiimoteModule.ko] undefined!
WARNING: "hci_open_dev" [/home/aurelien/Bureau/wii/wiimoteModule.ko] undefined!
WARNING: "hci_close_dev" [/home/aurelien/Bureau/wii/wiimoteModule.ko] undefined!
WARNING: "send" [/home/aurelien/Bureau/wii/wiimoteModule.ko] undefined!
WARNING: "select" [/home/aurelien/Bureau/wii/wiimoteModule.ko] undefined!
WARNING: "socket" [/home/aurelien/Bureau/wii/wiimoteModule.ko] undefined!
WARNING: "__fprintf_chk" [/home/aurelien/Bureau/wii/wiimoteModule.ko] undefined!
WARNING: "hci_read_remote_name" [/home/aurelien/Bureau/wii/wiimoteModule.ko] undefined!
WARNING: "strerror" [/home/aurelien/Bureau/wii/wiimoteModule.ko] undefined!
WARNING: "hci_inquiry" [/home/aurelien/Bureau/wii/wiimoteModule.ko] undefined!
WARNING: "connect" [/home/aurelien/Bureau/wii/wiimoteModule.ko] undefined!
WARNING: "recv" [/home/aurelien/Bureau/wii/wiimoteModule.ko] undefined!
WARNING: "hci_devba" [/home/aurelien/Bureau/wii/wiimoteModule.ko] undefined!
WARNING: "ioctl" [/home/aurelien/Bureau/wii/wiimoteModule.ko] undefined!
  LD [M]  /home/aurelien/Bureau/wii/wiimoteModule.ko
make[1]: quittant le répertoire « /usr/src/linux-headers-2.6.38-8-generic »
Le makefile :

Code :
1
2
3
4
5
6
7
8
9
10
CC      := gcc
obj-m += wiimoteModule.o
wiimoteModule-objs := wiimote.o libcwiimote.a
 
default:
    make -C /lib/modules/$(shell uname -r)/build M=$(PWD)
 
 
clean:
    make -C /lib/modules/$(shell uname -r)/build M=$(PWD) clean
PS : La libcwiimote.a est dans le même répertoire que le makefile.
glonglon est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/06/2011, 22h16   #2
Membre expérimenté
 
Inscription : août 2008
Messages : 455
Détails du profil
Informations personnelles :
Localisation : France, Puy de Dôme (Auvergne)

Informations forums :
Inscription : août 2008
Messages : 455
Points : 575
Points : 575
Envoyer un message via Skype™ à thierry.chich
Dans les options de gcc, je mettrai -lc, histoire de linker avec la libc.
thierry.chich est déconnecté   Envoyer un message privé Réponse avec citation 10
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 05h41.


 
 
 
 
Partenaires

Hébergement Web