Forum Linux.débutant SVP AIDE compilation busybox

Posté par  .
Étiquettes : aucune
-7
5
août
2011

slt,
j'obtien le message suivant:

/usr/include/linux/kernel.h:12:8: error: redefinition of ‘struct sysinfo’
include/libbb.h:105:8: note: originally defined here
make[1]: *** [networking/tcpudp.o] Error 1
make: *** [networking] Error 2

merci

  • # port salut

    Posté par  . Évalué à 2.

    c'est marqué dessus

    /usr/include/linux/kernel.h:12:8: error: redefinition of ‘struct sysinfo’
    include/libbb.h:105:8: note: originally defined here
    make[1]: **
    [networking/tcpudp.o] Error 1
    make: *** [networking] Error 2

  • # cmt corriger?

    Posté par  . Évalué à -8.

    Merci pr la réponse.
    cmt corriger cet erreur svp?
    merci

    • [^] # Re: cmt corriger?

      Posté par  . Évalué à 3.

      en lisant les tutos

      qui doivent surement te dire de ne pas utiliser les headers du kernel si tu utilises les headers de l'appli

  • # Se prendre en main, se tirer les doigts de quelque part, et autres dictons...

    Posté par  . Évalué à 3.

    C'est un problème connu.

    Et pour le savoir, rien de tel que :

    Dans les deux cas, on tombe sur ce fil de discussion.

    Hop,
    Moi.

  • # au secours!

    Posté par  . Évalué à -5.

    suis un débutant, c pr ça que je suis sur ce forum.
    J'ai googlé avant de poster, hélas j'ai pas trouvé la solution (ou j'ai pas compris )!!
    à l'aide svp merci

    • [^] # Re: au secours!

      Posté par  . Évalué à 4.

      Tu débutes et tu veux déjà compiler BusyBox ?
      Qu'est-ce qui te restera à faire lorsque tu seras expérimenté ?

  • # desactiver les applets neworking

    Posté par  . Évalué à -5.

    j'ai desactivé le networking.

    J'avais une autre erreur:
    /usr/bin/ld: cannot find -lcrypt
    /usr/bin/ld: cannot find -lm

    reglé par un: yum install glibc-static

    mntnt j'ai une autre erreur:

    util-linux/lib.a(mount.o): In function nfsmount':
    mount.c:(.text.nfsmount+0x7fe): undefined reference to
    pmap_getmaps'
    mount.c:(.text.nfsmount+0x96f): undefined reference to clntudp_create'
    ......
    ...
    util-linux/lib.a(mount.o): In function
    xdr_fhstatus':
    mount.c:(.text.xdr_fhstatus+0x15): undefined reference to xdr_u_int'
    mount.c:(.text.xdr_fhstatus+0x3b): undefined reference to
    xdr_opaque'
    util-linux/lib.a(mount.o): In function xdr_dirpath':
    mount.c:(.text.xdr_dirpath+0x1b): undefined reference to
    xdr_string'
    util-linux/lib.a(mount.o): In function xdr_mountres3':
    mount.c:(.text.xdr_mountres3+0x15): undefined reference to
    xdr_enum'
    .....
    collect2: ld returned 1 exit status
    make: *** [busybox_unstripped] Error 1

    vous voyez jz fais un effort quand même!!

    • [^] # Re: desactiver les applets neworking

      Posté par  . Évalué à 4.

      tu fais peut-etre des efforts, mais visiblement tu veux compiler un busybox alors qu'il suffit surement de le telecharger avec ton gestionnaire de paquet

      et pour compiler ce busybox tu desactives des choses (networking) sans te demander ce que c'est, ni si ce serait utile à d'autres outils.

      par ex :
      mount sait gerer les acces aux reseaux pour monter un disque dur reseau sur ta machine
      pour cela il peut utiliser le protocole nfs

      nfs comme Network File System a besoin de Reseau pour pouvoir fonctionner => donc ca plante car tu as desactivé networking

      • [^] # Re: desactiver les applets neworking

        Posté par  . Évalué à -5.

        je veux pas utiliser busybox sur mon system. J'essaye de créer ma propre distro.
        j'ai réussi à rendre une clé usb bootable en choppant le kernel de "SLITAZ" et le rootfs de "TINYCORE".
        Pr le moment je me concentre sur la création d'un "ram disk initial" minimal.

        • [^] # Re: desactiver les applets neworking

          Posté par  . Évalué à 2.

          creer sa distribution, c'est bien, c'est fun

          mais faut peut-etre commencer par le commencement (cf tes precedents posts)

          1°) si tu debutes en linux, deja utiliser une distribution courante, se faire la main avec,
          installer des paquets à partir des sources => ca va deja t'occuper un moment en recherche sur internet, en lecture de tutotriaux, et en essais, ensuite tu pourras passer à l'etape 2

          2°) te faire une machine de test, physique ou virtuelle, dans laquelle tu pourra rebooter autant que necessaire pour faire tes essais, puis tu pourras passer à 3°)

          3°) regarder les tutoriaux de Linux From Scratch et creer ta propre distribution

          car là, j'ai plutot l'impression (en te lisant depuis une semaine) que tu t'es dit, tiens linux c'est cool, je peux faire ce que je veux, si je me faisais mon propre linux (hop je passes à l'etape 3)

          alors que tu ne semble pas connaitre les tenants et les aboutissants de ce qui fait un systeme (pour preuve, desactiver le reseau et s'etonner ensuite que NFS/SMB ou meme simplement IP ne fonctionne plus ?)

          • [^] # Re: desactiver les applets neworking

            Posté par  . Évalué à -5.

            Merci Neox pour ces précieux conseils.
            1- J'ai déjà installé des apps à partir des sources.
            2- j'ai QEMU installé.
            3- Justement: j'essaye de partiquer ce que je lis!! mais j'arrive pas à compiller le busybox.

            • [^] # Re: desactiver les applets neworking

              Posté par  . Évalué à 2.

              si tu en es à l'etape 3 : faire sa distribution ben faut :
              - lire les messages d'erreurs
              - les comprendre
              - les corrigés (installer une autre appli, un patch, une bibliotheque, configurer une option)
              - reessayer

              • [^] # Re: desactiver les applets neworking

                Posté par  . Évalué à -6.

                le probleme je connais pas beaucoup en programmation, donc je ne peux pas comprendre les messages d'erreurs

                • [^] # Re: desactiver les applets neworking

                  Posté par  (site web personnel) . Évalué à 6.

                  Alors c'est mort, désolé..

                • [^] # Re: desactiver les applets neworking

                  Posté par  . Évalué à 6.

                  plus que la programmation c'est surtout l'anglais qui semble te manquer

                  car je ne fais pas non plus de programmation, mais quand un logiciel me dit

                  /usr/include/linux/kernel.h:12:8: error: redefinition of ‘struct sysinfo’
                  include/libbb.h:105:8: note: originally defined here

                  je comprend qu'il y a un truc (struct sysinfo) defini 2 fois (redefinition)
                  et qu'il est definit une premiere fois dans libbb.h (originaly defined here)

                  je ne sais pas pourquoi, ni comment, mais j'ai au moins compris ca.

                  idem pour les autres messages

                  donc quand dans mes exemples je dis
                  2°) apprendre à compiler des programmes ca veut aussi dire, apprendre à comprendre ce que veulent dire les messages d'erreurs (meme si on ne fait pas de programmation)
                  afin de savoir ou chercher, et quoi corriger pour que ca puisse compiler.

                  en sommes, tu t'es lancé dans une aventure, interessante, instructive (savoir comment faire sa propre distribution, comment compiler à partir des sources) mais c'est aussi un chemin plus long à parcourir pour arriver à avoir une distribution utilisable.

                  donc à moins d'avoir un besoin tres special qui necessite de faire ta propre distribution, si tu ne veux pas passer 6 mois autour des messages d'erreurs, il vaut peut-etre mieux partir d'une distribution deja faite en installant le minimum (ou en virant le superflu).

                  une debian server ca prend 300Mo sur le disque dur il me semble et ca doit etre equivalent dans les autres distributions. Et tu viens y greffer ce que tu veux dessus à partir des paquets existants (donc sans te prendre la tete à recompiler, sauf pour les besoins exotiques).

                  Donc à toi de voir, mais ne t'attend pas à un truc tout cuit si tu pars dans du LFS et de la compilation de sources.

                  • [^] # Re: desactiver les applets neworking

                    Posté par  . Évalué à -4.

                    Merci encore NeoX et tout les autres.
                    Je veux savoir comment linux fonctionne en réalisant une distrubition minimale, j'en ai pas besoin, mais juste pur apprendre.
                    J'ai trouvé beaucoup de tutoriaux, la plus parts sont basé sur busybox. c'est pour ça que je suis partis sur ce chemin!!
                    Mon expérience sera peut être utile à certains d'autres. On est la pour partager nos connaissances.

                    • [^] # Re: desactiver les applets neworking

                      Posté par  . Évalué à 7.

                      Donc pour commencer, apprends les bases de la programmation système. Et fait du C, en regardant particulièrement sur la compilation, des bibliothèques dynamiques etc…

                      Pour faire une analogie avec les voitures, car c'est jamais adapté, mais que c'est souvent marrant, c'est comme si tu disais :

                      SVP Aide assemblage moteur

                      Je n'arrive pas à mettre le piston, il ne rentre pas, et un anglais qui passait par là m'à dit «you already have a piston in your engine».

                      Je souhaite apprendre la mécanique automobile en fabriquant ma propre petite voiture. Merci de m'aider, on est là pour partager nos connaissances, d'ailleurs mon expérience en mécanique sera peut-être utile à d'autres.

                      Un piston vous dites ? Mais c'est quoi ça ?

                      Envoyé depuis mon lapin.

  • # ENFIN : REUSSI !!

    Posté par  . Évalué à -2.

    busybox compilé dès le 1er coup sans aucun erreur sous UBUNTU !!
    le probleme c'était fedora
    Merci à tt le monde

    • [^] # Re: ENFIN : REUSSI !!

      Posté par  . Évalué à 2.

      le probleme c'était fedora

      Perso, je n'aurais pas songé que ça puisse venir de là.
      Penses à faire une remontée de bug.

    • [^] # Re: ENFIN : REUSSI !!

      Posté par  . Évalué à 5.

      d'apres le message d'origine, le probleme serait plutot lié au fait que tu avais 2 fichiers .h qui definissaient la structure sysinfo.

      le .h fournit par le noyau

      /usr/include/linux/kernel.h:12:8: error: redefinition of ‘struct sysinfo’

      et celui fournit par busybox

      include/libbb.h:105:8: note: originally defined here

      l'implication de la distrib (ca marche sur Ubuntu mais pas sous Fedora) serait plus à voir du coté de l'installation par defaut des "kernel headers" chez Fedora, là ou il faut les ajouter sur "Ubuntu".

      • [^] # Re: ENFIN : REUSSI !!

        Posté par  . Évalué à 1.

        d'apres le message d'origine, le probleme serait plutot lié au fait que tu avais 2 fichiers .h qui definissaient la structure sysinfo.

        1. le problème est connu ;
        2. il est déjà corrigé.

        Cf. mon précédent commentaire.

        Hop,
        Moi.

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.