Journal Kernels header... quand on a pas la place de mettre le noyau...

Posté par  (site web personnel) .
Étiquettes :
0
16
mai
2004
Bonjour cher journal. Une nouvelle fois j'ai besoin de ton aide...

Je construis une 'distribution' specifique a mon robot et j'ai 2 problemes importants dont je n'arrive pas a m'affranchir (en fait plutot 3):

J'utilise pour ma distribution une base de slackware(en fait je l'ai construit chrooté dans ma gentoo en tardégézedifiant les paquets), avec tous les packages importants, j'ai meme gcc.

Mon "disque dur" est en fait une compact flash de 256Mo (qui semble d'ailleurs avoir qq problemes matériel). Pour le noyau, comme j'ai besoin du dernier module pwcx (et qu'il faut faire quelques bidouilles infames dans le noyau pour que ca marche) ainsi que d'un module "home-made" j'ai directement copié initrd/module/image du noyau sur la distrib.

Apres, j'ai compilé en environnement chrooté les librairies et logiciels dont j'avais besoin (glib, sdl, etc), ainsi que grub.

voila donc mes 2 problemes:
- Lors du boot, il me faut appuyer sur entree car le noyau (p-e l'initrd, j'ai pas verifié) dit que le root filesystem est monté RW et non RO... en appuyant sur entree, tout va bien ca continue, mais ca m'oblige a connecter un clavier, ce que je ne souhaite pas.

- lorsque je compile mes programmes qui nécessitent mon module ainsi que celui de la webcam (pwcx) , ca ne veux pas: deja, il ne trouve pas les headers kernel, je suis obligé de lui passer un -I/usr/src/linux/include. Ensuite il continue a etre pas content pour je ne sais quelle raison (de memoire c'est qu'il ne trouve pas a quoi correspondent certaines structures)

- mon 3e probleme (dont je pense connaitre le provenance)c'est que sshd ne marche pas correctement, il plante les clients (en fait il plante totalement la console) lors de la connection!! je pense que ca doit venir des problemes (materiels) de ma CF (plus elle est remplie, plus j'ai des erreurs du type "can't read inode xxx")

bref je dois resoudre ca d'ici mercredi, et j'ai 100000 autres choses a faire, je suis pas dans la merde... help please!
  • # oubli

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

    j'oubliais, evidemment, par rapport au titre: je n'ai pas la place de mettre le noyau en entier sur la CF, je me suis donc contenté de /usr/src/include... il faut rajouter qqchose ?
    • [^] # Re: oubli

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

      Je comprends pas pourquoi tu as besoin des headers. Il doit compiler ses programmes lui même au boot ton robot ? 0_o

      pertinent adj. Approprié : qui se rapporte exactement à ce dont il est question.

      • [^] # Re: oubli

        Posté par  . Évalué à 2.

        J'ajouterais: je ne comprends pas pourquoi cet engin a besoin de tous ces outils de compilation...

        Un noyau, une mini-libc, des mini-utilitaires (busybox ou un truc dans le genre) et les exécutables spécifiques au robot...
        • [^] # Re: oubli

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

          J'ai fait tenir tout ça plus Perl, deux noyaux, tous les modules de cartes ethernet et deux ou trois autres trucs dans 6.5 Mo. C'est ici: http://krunch.servebeer.com/~krunch/vrac/sw/ligax/(...) (si vous en avez pas l'utilité n'allez pas télécharger, j'ai pas les moyens de me faire linuxfriser)

          pertinent adj. Approprié : qui se rapporte exactement à ce dont il est question.

          • [^] # Re: oubli

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

            merci de la proposition mais c'est bon :) j'ai 256 Mo, tant qu'a faire je les utilise :)

            Et puis je peux faire du ssh comme je veux comme ca, et compiler sur le robot c'est bien pratique(surtout que j'ai un VI agreable et accueillant dessus), mais bon, vu que ca fonctionne pas, je vais m'en passer :oP

            et l'an dernier j'etais en busybox/uclibc/tinylogin, etc, mais la distrib etait desagreable a utiliser (tout ne fonctionnait pas, mais j'avais quand meme un boot en 12s et gcc dessus... qui compilait le meme genre de programme!), et j'ai pas 10 ans a passer dessus non plus :P
      • [^] # Re: oubli

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

        non mais le robot n'est pas d'une simplicité enfantine, aussi c'est agreable de recompiler les choses sur le robot au lieu de faire un scp en mettant un mot de passe...
  • # Pareil ou presque

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

    J'ai fait la même chose que toi ou presque (dans le même but ? ;) mais je n'ai mis aucun outil de compilation sur le robot. Slackware ne fait plus qu'une vingtaine de mégaoctets et tout fonctionne à peu près comme je le veux. Pour la compilation, j'utilise une deuxième machine, avec les mêmes versions de logiciel (même version de Slackware en fait).
  • # Commentaire supprimé

    Posté par  . Évalué à 3.

    Ce commentaire a été supprimé par l’équipe de modération.

    • [^] # Re: À propos des entêtes du noyau

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

      Oui c'est presque ce que j'ai déjà fait, en fait j'ai copié le répertoire include en entier.

      Néanmoins, ca ne marche pas mieu...
      • [^] # Re: À propos des entêtes du noyau

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

        Sauf que ce n'est pas bon (de copier le repertoire en entier), en effet les headers libc & co utilisent par default les path /usr/include/asm et /usr/include/linux.
        Sauf que le kernel (et surtout les kernels recents) utilisent plusieurs dossier pour les parties 'asm' et surtout il y a des fichiers dans linux/ qui ne sont pas forcement utilisables directement (a l'exterieur du noyau).
        De plus il est important de conserver les include kernels correspondants a ceux utilisés lors de la compilation de la glibc si tu veut limiter les ennuis.

        Donc installe le paquet contenant les includes kernels fournis par ta distribution
  • # Option ro

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

    Pour ton premier problème, peut-etre que l'option ro a passer au noyau dans ton bootmanager pourrait t'aider.
    • [^] # Re: Option ro

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

      C'est reparé, j'ai simplement viré l'initrd de gentoo au demarrage: c'est moins beau, mais il me faudrait le modifier car il doit avoir un fstab qui correspond a mon pc, non au robot.
  • # Rien à voir

    Posté par  . Évalué à 2.

    Je ne peut malheureusemnt pas t'aider mais j'aimerais bien savoir ou on peut trouver des infos au sujet de la robotique sous linux, en particulier sur les moteurs pas-à-pas sur port série, voire un howto pour confectionner le matériel. Quelqu'un sait ?
    • [^] # Re: Rien à voir

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

      pour ca, le mieu est d'aller sur les forums de planete-sciences ( http://planete-sciences.org/forums(...) ) je pense qu'environs 70-80% des robots de la competition tournent sous Linux (ou derivés temps réel ou adapté embarqué), donc tu y trouvera sans doute de l'aide.

      sinon, tu as encore le site de mon equipe: http://galileo.ma.cx(...) qui dit tout ce que l'on a fait l'an dernier en informatique. Cette année, comme en plus de l'info, j'ai fait méca et élec, je devrais produire une grande quantité de docs fortes interessantes (pendant les vacances d'été) pour tout le monde :)

      néanmoins, vis a vis de ce que tu veux, le plus simple est de prendre un PIC (tu peux avoir des samples gratuits sur http://microchip.com(...)), un 16f88 devrait bien aller(en plus avec son oscillateur interne super fiable, tu peux te passer de quartz). Ensuite tu telecharges MPlab et CC5X, tu cherches un peu sur le net(bigonoff est ton ami), tu lis un peu les datasheet du PIC, les docs de CC5X, puis tu t'interesses a un composant sympa pour les pas a pas comme le L6208N (14€ a electronique diffusion) , tu los bien les "application notes" du composant, et tu peux controler simplemet un moteur pas a pas bipolaire d'assez grosse puissance (il y a d'autres composants genre l297/l298 --voir l298 tout seul-- si tu veux pas controler un pas a pas trop puissant)... et apres c'est du gateau :)
      • [^] # Re: Rien à voir

        Posté par  . Évalué à 2.

        Exellent merci ! Ça me paraît être très complet (un peu trop même :p), j'espère arriver à mes fins avec ça (pas plus embitieux que de faire naviguer un objet sur une courroie crantée)

Suivre le flux des commentaires

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