# Installation d'une librairie



## skender (15 Mai 2007)

Bonjour tout le monde, 

Je suis en train de programmer une petite simulation sous C en utilisant Xcode. Pour les beosins de cette simulation, je dois utiliser un g&#233;n&#233;rateur de nombres al&#233;atoires qui est fourni dans cette librairie : http://www.gnu.org/software/gsl/manual/html_node/

Quelqu'un peut il, s'il vous plais, m'expliquer comment faire pour que lors de la programmation je n'utilise que des #include < > ?

Dans la documentation de la librairie ils disent qu'il faut l'installer dans /usr/local mais un tel dossier n'existe pas... Pourtant il est mentionn&#233; que le paquet est compatible avec Mac OS...

Merci beaucoup pour votre aide !


----------



## ntx (15 Mai 2007)

skender a dit:


> Quelqu'un peut il, s'il vous plais, m'expliquer comment faire pour que lors de la programmation je n'utilise que des #include < > ?


Il faut que ton include soit dans un répertoire "standard" : /usr/include ou /usr/local/include


> Dans la documentation de la librairie ils disent qu'il faut l'installer dans /usr/local mais un tel dossier n'existe pas... Pourtant il est mentionné que le paquet est compatible avec Mac OS...


Et bien tu le crées  Il est sûrement préférable de le faire en admin voire en root.


----------



## p4bl0 (15 Mai 2007)

ntx a dit:


> Il faut que ton include soit dans un répertoire "standard" : /usr/include ou /usr/local/include
> 
> Et bien tu le crées  Il est sûrement préférable de le faire en admin voire en root.


attention !

Le dossier /usr existe mais il est cach&#233; par le finder (y aller avec le terminal*).
Donc la cr&#233;ations risque de ne pas marcher.

* *cd /usr*
*open .* si tu n'es pas &#224; l'aise avec le terminal.


----------



## skender (15 Mai 2007)

Merci pour vos réponses 

En effet, j'ai bien essayé de mettre la librairie dans /usr/local tels que c'est dit dans les Install notes, cependant, lors de la compilation, Xcode me dit toujours qu'il ne peut pas trouver le fichier en question (celui de l'include). J'ai alors mis la librairie dans /usr/include/ (qui existe déja et contient des trucs comme stdio.h ou stdlib.h), et là pareil, Xcode répond qu'il ne peut pas trouver la librairie.

N'y a t-il pas moyen dans Xcode de forcer la rechèrche de librairies dans des dossiers que l'on définit ? (cette option est pourtant présente dans plein d'autres logiciels du genre)


----------



## g.lebourgeois (15 Mai 2007)

faire glisser la bilbioth&#232;que dans ton projet


----------



## skender (15 Mai 2007)

> faire glisser la bilbiothèque dans ton projet



Comment ca ?


----------



## ntx (15 Mai 2007)

skender a dit:


> J'ai alors mis la librairie dans /usr/include/ (qui existe déja et contient des trucs comme stdio.h ou stdlib.h), et là pareil, Xcode répond qu'il ne peut pas trouver la librairie.


Déjà les fichiers .h ne sont pas des librairies mais des "headers" qui ne font que déclarer des objets (fonctions, variables, ...) définis dans une librairie (fichiers .a, .so ou .dylib).


> N'y a t-il pas moyen dans Xcode de forcer la rechèrche de librairies dans des dossiers que l'on définit ? (cette option est pourtant présente dans plein d'autres logiciels du genre)


Quelle est exactement ton erreur : la compilation durant laquelle il ne trouve pas l'include ou le linkage durant lequel il ne trouve pas un symbole ?
Pour les options ce sont celles de gcc, accessibles par les réglages de ta target ou par glisser/déposer comme l'a dit notre ami lebourgeois.
Avant d'utiliser XCode, il faudrait peut être un minimum consulter le mode d'emploi (menu Aide)


----------



## skender (16 Mai 2007)

Merci pour ces réponses, je vais essayer tout de suite et voir ce que ca donne.



> Avant d'utiliser XCode, il faudrait peut être un minimum consulter le mode d'emploi (menu Aide)



Crois moi que j'ai eu quand même cette idée dès le début...


----------



## skender (16 Mai 2007)

Déoslé, mais ca ne marche pas... 
J'essaye depuis des heures à inclure cette fameuse librairie, mais rien n'y fait.... J'ai toujours des erreurs...

Quelqu'un n'aurait il pas une procédure standard à suivre pour faire ce genre de choses ?

Merci


----------



## g.lebourgeois (16 Mai 2007)

Fais glisser ton biblioth&#232;que.a dans ton projet. Puis fais ton include.


----------



## ntx (16 Mai 2007)

skender a dit:


> J'essaye depuis des heures à inclure cette fameuse librairie, mais rien n'y fait.... J'ai toujours des erreurs...


Mais quelles erreurs ?


----------



## Igbe (16 Août 2009)

Bonjour,

J'ai le même problème, je dois installer cette librairie mais je ne sais pas comment faire...

En allant sur : ftp://ftp.ironie.org/ftp.gnu.org/pub/gnu/gsl/

Je download l'un des fichiers ?

Et ensuite ? Comment l'installer ? (désolé je suis nouveau sur mac je suis un peu désorienté par ces procédures d'installation...)

Merci


----------



## ntx (16 Août 2009)

Igbe a dit:


> J'ai le même problème, je dois installer cette librairie mais je ne sais pas comment faire...


Je ne comprends pas d'où sortent ces gens qui ont un besoin impérieux d'installer des librairies et qui ne sont pas foutus de lire le mode d'emploi 


> Et ensuite ? Comment l'installer ?


./configure
make

Mais bien sûr cela suppose que tu as installé les outils de développement.


> désolé je suis nouveau sur mac je suis un peu désorienté par ces procédures d'installation...


Ce n'est pas un problème de Mac c'est un problème d'incompétence en programmation et en informatique. :rateau: Ton lien permet de récupérer les sources de cette librairie, pas l'exécutable. Ceci est destiné aux développeurs, donc pourquoi as-tu besoin de cette librairie ? 
Normalement tu n'as jamais besoin d'installer des librairies, elles sont sensées être embarquées dans l'exécutable, sauf problème de licence, mais c'est assez rare. Et à part ce dernier cas, si cela n'est pas fait, c'est que le développeur de ton application n'a rien compris à la programmation sur Mac :rateau:


----------



## Igbe (16 Août 2009)

Je dois installer cette librairie pour faire tourner l'algo CSSR de cette page : http://www.lsi.upc.edu/~mpadro/software_en.html

Dans le ReadMe ils parlent d'avoir la librairie GSL (c'est bien pareil que GNU ?)


> To compile:
> -----------
> 
> make
> ...


Peut être que mon lien n'est pas le bon, j'en sais rien. Comment récupérer l'exécutable ?

Je cherche juste à installer cette librairie pour pouvoir installer mon algorithme.

(Sinon des incompétences informatiques oui, bien sûr, j'avoue tout... Mais en ce moment je n'ai pas le temps de me former donc je prends des chemins de traverse)


----------



## ntx (16 Août 2009)

Pour gsl, tout est expliqué dans le fichier INSTALL :
./configure
make
make install (il faut sûrement être root pour cette commande)

Ta librairie devrait être dans /usr/lib
Ensuite tu n'as plus qu'à compiler cssr avec la commande make.

Mais ceci reste du niveau du développement, ce ne sont pas des outils utilisables par un quidam en l'état. Donc je voudrais bien savoir quelle est l'andouille qui demande à des étudiants n'ayant aucune compétence en programmation d'utiliser ce genre d'outils.


----------



## Igbe (16 Août 2009)

Ok je te suis, sauf "être root", ça veut dire quoi ?

Sinon ça me rassure que tu dises que ces outils sont un peu difficiles d'accès, je le pensais très fort 

En fait j'ai besoin de ça dans le cadre d'un stage de recherche, donc le chemin n'est plus balisé... Je suis confronté à la dure réalité de "développement" (enfin dure pour moi).

Merci en tout cas

edit : youhou, ça marche (en effet j'ai fait sudo bash pour "passer en root"...) et j'ai réussi à compiler l'algo


----------



## grumff (16 Août 2009)

sudo ça te donne les droits root, ça ne passe pas par l'utilisateur root, autrement dit les fichiers créés n'appartiendront pas à l'utilisateur root mais à toi, attention à la nuance (juste à titre informatif, dans ce cas précis c'est peut-être pas plus mal ou au pire sans importance).


----------

