[EMAIL PROTECTED] a �crit r�cemment que :
> je vient de changer de distrib. J'avait une mandrake 6.2 et me voila avec
> une debian 2.2.
> Mon probleme est que je n'arrive plus � compiler certains truc dont:
> -pour faire un test simple :
> //////////////////////////////////////////////////
> #include <stdio.h>
> #include <stdlib.h>
> #include <math.h>
>
> int main(int argc, char *argv[]){
> double N;
>
> N=sqrt(4.0);
> printf("%d ",N);
> printf("Hello, world!\n");
> return EXIT_SUCCESS;
> }
> ///////////////////////////////////////////////////
>
> gcc main.c -o main me retourne:
> main.o: In function `main':
> ~/main.c:30: undefined reference to `sqrt'
> collect2: ld returned 1 exit status
>
Ce comportement est normal.
c'�tait quoi le compilateur sous Mandrake 6.2 ?
"undefined reference to sqrt" signifie bien ce que �a veut dire. Le
compilateur ne trouve pas le code de sqrt
Il faut lier ton code avec la biblioth�que math�matique
gcc - -lm main.c -o main
C'est le comportement de tous les compilateurs sous Unix que je
connais. La biblioth�que math�matique est s�par�e et n�cessite donc
d'�tre ajout�e manuellement � l'�dition de liens.
> meme chose avec les librairies curses...
Et m�me r�ponse, il faut indiquer � l'�diteur de liens (ld) la
biblioth�que suppl�mentaire.
>
> -un autre message d'erreur m'empeche d'arriver � la fin de la compilation
> de lcdproc alors que ca marchais sous mon anciene distrib
>
Quel est le message d'erreur exact ?
--
Guillaume Rumeau <[EMAIL PROTECTED]>
� L'homme est dou� d'une vaste intelligence
qui regarde devant elle et au-del� � (J.L)