IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C Discussion :

Bibliothèque équivalente pour "sys/param.h"


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de Bayard
    Inscrit en
    Juin 2002
    Messages
    863
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 863
    Par défaut Bibliothèque équivalente pour "sys/param.h"
    Bonsoir,

    Je compile une bibliothèque sur un noyau temps réel.
    Cette librairie inclut "sys/param.h" qui (me dit mon ami google) dépends de linux.
    Connaissez-vous une bibliothèque qui permette de remplacer cela ?

    Merci

  2. #2
    Membre Expert
    Avatar de kwariz
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Octobre 2011
    Messages
    898
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Chef de projet en SSII
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2011
    Messages : 898
    Par défaut
    Salut,

    param.h est un header de la glibc. En effet elle fait des #include de header spécifiques au noyau. Chez moi par exemple j'ai :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    #ifndef _SYS_PARAM_H
    #define _SYS_PARAM_H    1
     
    #ifndef ARG_MAX
    # define __undef_ARG_MAX
    #endif
     
    #include <limits.h>
    #include <linux/limits.h>
    #include <linux/param.h>
     
    /* The kernel headers defines ARG_MAX.  The value is wrong, though.  */
    #ifdef __undef_ARG_MAX
    # undef ARG_MAX
    # undef __undef_ARG_MAX
    #endif
    ...
    Donc je suppose que sur ton architecture RT tu as un équivalent qui inclut les bon headers du noyau (puisque ces paramètres en dépendent) ?

    C'est une bibliothèque que tu développes ? Un 3rd party que tu compiles ?


    EDIT: par curiosité j'ai jeté un coup d'oeil sur une machine de lab en freebsd sans glibc : le header est system dependant et ne définit pas forcément les mêmes choses.

  3. #3
    Membre éclairé Avatar de Bayard
    Inscrit en
    Juin 2002
    Messages
    863
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 863
    Par défaut
    Un 3rd party que tu compiles ?
    -> Oui

    J'ai été sur le site de la lib C
    http://www.gnu.org/software/libc/download.html

    Il n'y a pas de fichier param.h... même s'il y a un répertoire sys...

  4. #4
    Membre Expert
    Avatar de kwariz
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Octobre 2011
    Messages
    898
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Chef de projet en SSII
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2011
    Messages : 898
    Par défaut
    Normal ... il est très fortement caché :

    http://sourceware.org/git/?p=glibc.g...ux/sys;hb=HEAD

    Tu fais un portage ?

  5. #5
    Membre éclairé Avatar de Bayard
    Inscrit en
    Juin 2002
    Messages
    863
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 863
    Par défaut
    Tu fais un portage ?
    -> Là je ne comprends pas encore tout...

    Donc je suppose que sur ton architecture RT tu as un équivalent qui inclut les bon headers du noyau (puisque ces paramètres en dépendent) ?
    -> Ne me dit pas qu'il y a des dépendances noyau ? Non, ne me dit pas cela...

  6. #6
    Membre Expert
    Avatar de kwariz
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Octobre 2011
    Messages
    898
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Chef de projet en SSII
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2011
    Messages : 898
    Par défaut
    Citation Envoyé par Bayard Voir le message
    -> Là je ne comprends pas encore tout...
    Un portage, tu portes la bibliothèque sur une architecture pour laquelle elle n'a pas été prévue ou testée, pour laquelle il n'existe pas de version spécifique.

    -> Ne me dit pas qu'il y a des dépendances noyau ? Non, ne me dit pas cela...
    Bah quand tu regardes le commentaire de la version générique de param.h :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    /* This file should contain various parameter macros appropriate for the
       machine and operating system.  There is no standard set of macros; this
       file is just for compatibility with programs written for Unix that
       expect it to define things.  On Unix systems that do not have their own
       sysdep version of this file, it is generated at build time by examining
       the installed headers on the system.  */
     
    #include <limits.h>
     
    #define MAXSYMLINKS  1
    #define MAXPATHLEN   256
     
    /* Macros for min/max.  */
    #define MIN(a,b) (((a)<(b))?(a):(b))
    #define MAX(a,b) (((a)>(b))?(a):(b))
    Sur quelle architecture compiles-tu ? Quelle bibliothèque ? Tu disposes de la glibc sur la machine cible ?

Discussions similaires

  1. SetValue pour un lookup avec simple quote dans EntityType
    Par VITALTH dans le forum Microsoft Dynamics CRM
    Réponses: 1
    Dernier message: 19/08/2014, 19h49

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo