Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Signification de certains messages lors d'un « ./configure »

13 réponses
Avatar
Francois Lafont
Bonjour à tous,

J'ai installé Samba4 sur une Debian Wheezy (mais Samba4 n'est pas mon propos ici, c'est un exemple arbitraire) via une compilation en suivant des tutos ici où là. Je ne suis pas habitué à ce type d'installation, d'où ce post aujourd'hui.

Tout se passe bien, en gros ça se résume à :

apt-get install les-paquets-nécessaires-à-la-compilation
./configure && make && make install

A prori, ça fonctionne, le programme fait bien sont travail. Mais pour ma culture perso, j'aurais bien aimé comprendre certains messages au niveau de la sortie de la commande ./configure. En effet, au niveau de cette commande, j'ai pas mal de message comme par exemple :

Checking for header sys/filio.h : no
Checking for header sys/filsys.h : no
Checking for header sys/fs/s5param.h : no
Checking for header sys/fs/vx/quota.h : no
Checking for header sys/id.h : no

ou encore :

Checking for strlcpy : not found
Checking for strlcat : not found
Checking for strlcpy : not found
Checking for strlcat : not found
Checking for library bsd : not found
Checking for strlcpy : not found
Checking for strlcat : not found
Checking for getpeereid : not found
Checking for library bsd : not found
Checking for getpeereid : not found
Checking for library bsd : not found
Checking for setproctitle : not found
Checking for library setproctitle : not found
Checking for setproctitle : not found

Évidemment, j'ai une grande majorité de « ok » qui s'affichent en vert, mais j'ai aussi ici ou là du « not found » ou du « no » qui s'affichent en orange. Pourtant, à la fin de l'exécution de la commande ./configure, j'ai quand même un joli message écrit en vert me disant :

'configure' finished successfully (1m47.880s)

Que signifient les messages ci-dessus exactement ? Quand je vois un « Checking for strlcpy : not found », je me dis que c'est sûrement embêtant pour la suite mais pourtant ça n'a pas l'air de poser problème.

Merci d'avance pour vos lumières.

--
François Lafont

10 réponses

1 2
Avatar
Emmanuel Florac
Le Sun, 21 Apr 2013 12:58:39 +0200, Francois Lafont a écrit:


Que signifient les messages ci-dessus exactement ? Quand je vois un «
Checking for strlcpy : not found », je me dis que c'est sûrement
embêtant pour la suite mais pourtant ça n'a pas l'air de poser problème.




Ce sont des fonctionnalités optionnelles. Si le configure réussit, ça
signifie que tu avais au moins les fonctionnalités requises; certaines
fonctionnalités optionnelles sont probablement très souhaitables (comme
le fait d'avoir des threads nommés, ou d'utiliser strlcpy au lieu de
strcpy).

--
A human being should be able to change a diaper, plan an invasion,
butcher a hog, conn a ship, design a building, write a sonnet, balance
accounts, build a wall, set a bone, comfort the dying, take orders, give
orders, cooperate, act alone, solve equations, analyze a new problem,
pitch manure, program a computer, cook a tasty meal, fight efficiently,
die gallantly. Specialization is for insects.
Robert A. Heinlein.
Avatar
Francois Lafont
Le 21/04/2013 16:43, Emmanuel Florac a écrit :

Ce sont des fonctionnalités optionnelles. Si le configure réussit, ça
signifie que tu avais au moins les fonctionnalités requises;



Ok. C'est noté, merci bien.

certaines
fonctionnalités optionnelles sont probablement très souhaitables (comme
le fait d'avoir des threads nommés, ou d'utiliser strlcpy au lieu de
strcpy).



Pas facile pour le néophyte de faire la distinction entre ce qui est « optionnel souhaitable » et ce qui est simplement optionnel.

Pour le coup du strlcpy, par exemple, je n'arrive pas à faire disparaître le message « not found ». Pourtant j'essaye de trouver le paquet à installer qui-va-bien mais sans succès...

Autre exemple, il est question du fichier "sys/id.h" par exemple qui n'est pas présent sur mon sytème. Mais si je le cherche avec :

apt-file search "sys/id.h"

je n'ai aucun résultat (ie aucun paquet Debian ne semble contenir un tel fichier).

Par rapport aux « threads nommés », quel est le warning cité dans mon premier message qui se rapporte à ce problème ?


--
François Lafont
Avatar
Eric Masson
Francois Lafont writes:

'Lut,

Pas facile pour le néophyte de faire la distinction entre ce qui est «
optionnel souhaitable » et ce qui est simplement optionnel.



L'autoHell a pour fonction la configuration du code en fonction des
spécificités d'une plateforme.

Par exemple, certaines plateformes disposent de fonctions de
manipulation de chaînes prenant en compte la longueur pour éviter des
débordements (les strl*), en leur absence le mécanisme de compilation
conditionnelle permet d'utiliser une implémentation fournie par le
développeur ou alors d'utiliser en lieu et place une autre fonction au
rôle similaire appelée de manière différente.

Bref, dès lors que le résultat de la compilation est fonctionnel, tout
cela n'a que peu d'importance excepté pour le/les mainteneurs ou
l'utilisateur qui veut modifier le code source.

--
Neuneu, moi ? Peut-être. En tout cas, je ne le fais pas exprès. Ca vient
tout seul. Des fois, un mot, même insignifiant, et ça part. Tenez, dites
pour voir un mot, au hasard je précise.
-+- C In <http://www.le-gnu.net> : Neuneu avoué est à demi pardonné -+-
Avatar
Erwan David
Francois Lafont écrivait :

Le 21/04/2013 16:43, Emmanuel Florac a écrit :

Ce sont des fonctionnalités optionnelles. Si le configure réussit, ça
signifie que tu avais au moins les fonctionnalités requises;



Ok. C'est noté, merci bien.

certaines
fonctionnalités optionnelles sont probablement très souhaitables (comme
le fait d'avoir des threads nommés, ou d'utiliser strlcpy au lieu de
strcpy).



Pas facile pour le néophyte de faire la distinction entre ce qui est « optionnel souhaitable » et ce qui est simplement optionnel.

Pour le coup du strlcpy, par exemple, je n'arrive pas à faire disparaître le message « not found ». Pourtant j'essaye de trouver le paquet à installer qui-va-bien mais sans succès...

Autre exemple, il est question du fichier "sys/id.h" par exemple qui n'est pas présent sur mon sytème. Mais si je le cherche avec :

apt-file search "sys/id.h"

je n'ai aucun résultat (ie aucun paquet Debian ne semble contenir un tel fichier).



Logique : configure cherche sur quel *Unix* il est et ne se limite pas à
linux. Que certains fichiers ne soient pas là lui indique simplement une
situation et n'est a priori *poas* une erreur.

Cesse de te prendre la tête et si ça passe, c'est bon.

sys/id.h est peut-être disponible sous solaris ou bsd, on s'en fout
c'est juste que dans le source il y aura une adaptation selon le cas.




--
Les simplifications c'est trop compliqué
Avatar
Nicolas George
Francois Lafont , dans le message
<51741205$0$2415$, a écrit :
Pour le coup du strlcpy, par exemple, je n'arrive pas à faire disparaître
le message « not found ». Pourtant j'essaye de trouver le paquet à
installer qui-va-bien mais sans succès...



Sous GNU/Linux, il n'y a rien à installer, strlcppy fait partie de la libc.
Ce configure est grotesque.
Avatar
Erwan David
Nicolas George <nicolas$ écrivait :

Francois Lafont , dans le message
<51741205$0$2415$, a écrit :
Pour le coup du strlcpy, par exemple, je n'arrive pas à faire disparaître
le message « not found ». Pourtant j'essaye de trouver le paquet à
installer qui-va-bien mais sans succès...



Sous GNU/Linux, il n'y a rien à installer, strlcppy fait partie de la libc.
Ce configure est grotesque.



Non. Il n'y a pas que la glibc dans le monde.

--
Les simplifications c'est trop compliqué
Avatar
Nicolas George
Erwan David , dans le message , a
écrit :
Non. Il n'y a pas que la glibc dans le monde.



François utilise une Debian, c'est bien une glibc qu'il a, donc il a les
fonctions strlcpy et compagnie, or l'extrait du configure qu'il a posté ne
les voit pas.

Donc je maintiens : ce configure est grotesque.

Et j'ajoute : tu as loupé une occasion de te taire.
Avatar
Erwan David
Nicolas George <nicolas$ écrivait :

Erwan David , dans le message , a
écrit :
Non. Il n'y a pas que la glibc dans le monde.



François utilise une Debian, c'est bien une glibc qu'il a, donc il a les
fonctions strlcpy et compagnie, or l'extrait du configure qu'il a posté ne
les voit pas.




Justement non, en ddebian ce n'est plus une glibc

Donc je maintiens : ce configure est grotesque.

Et j'ajoute : tu as loupé une occasion de te taire.



Le configure est justement là pour pouvoir prendre les sources et les
compiler partout. On ne va pas faire un configure solaris, un configure
Tru64, un configure FreeBSD, etc.

configure doit détecter les features de la plateforme pour que le
programme compile.

Et *tu* as perdu une occasion de taire, à moins que tu ne considère que
sorti de linux il n'y a rien ?

--
Les simplifications c'est trop compliqué
Avatar
Nicolas George
Erwan David , dans le message , a
écrit :
Justement non, en ddebian ce n'est plus une glibc



Une eglibc, il y a un chef caractériel en moins mais du point de vue
technique sur x86 c'est exactement la même chose.

Le configure est justement là pour pouvoir prendre les sources et les
compiler partout. On ne va pas faire un configure solaris, un configure
Tru64, un configure FreeBSD, etc.



Hors sujet.

configure doit détecter les features de la plateforme pour que le
programme compile.



Précisément. Et celui-ci échoue à détecter strlcpy alors qu'il est présent,
donc il est grotesque, merci de ton soutien.

Et *tu* as perdu une occasion de taire, à moins que tu ne considère que
sorti de linux il n'y a rien ?



Apprends à lire, je n'ai jamais rien écrit qui puisse s'interpréter de cette
manière.
Avatar
Erwan David
Nicolas George <nicolas$ écrivait :

Erwan David , dans le message , a
écrit :
Justement non, en ddebian ce n'est plus une glibc



Une eglibc, il y a un chef caractériel en moins mais du point de vue
technique sur x86 c'est exactement la même chose.

Le configure est justement là pour pouvoir prendre les sources et les
compiler partout. On ne va pas faire un configure solaris, un configure
Tru64, un configure FreeBSD, etc.



Hors sujet.



Absolument pas


--
Les simplifications c'est trop compliqué
1 2