# [GENTOO-SOURCES]OSError: [Errno 12] Cannot allocate (résolu)

## pepit

Bonjour,

Après avoir installé gentoo avec openbox sur un pentium III de bureau pour voir et apprendre, ce qui fut assez long et laborieux, je m'attaque depuis 4 jours au tecra 8000 : pentium II 400 avec 131 Mio de Ram et DD de 10 Gio.

J'en suis à l'étape d'installation des sources

La réponse de "emerge gentoo-sources" est dans le titre.

Une recherche sur le net m'a appris qu'il existe un bug pouvant provoquer cette erreur mais une simple relance du PC la corrige.

/dev/sda1 = boot ext2 32Mio

/dev/sda2 = swap 400 Mio

/dev/sda3= root ext4 le reste du DD

Dans mon cas c'est plutôt mon ordinosaure et sa faible mémoire qui serai la cause de mon problème. J'ai trouvé quelques soluces possible comme modifier mon make.conf comme suit : CFLAGS = «02-march=pentium2 -pipe» en CFLAGS = «02-march=pentium2 »

Puis allouer un max de swap.... 

Voire ajouter de la RAM... Pas prévu mais faut voir! Du coup si, RAM en route (2x128Mio)....

C'est bien, mais avant, je voudrai connaître vos avis car pour modifier mon swap je suis obligé de supprimer la partition root et tout refaire. Gparted plante lors du redimensionnement -mémoire trop faible oblige! 

Pour le cas ou ce soit suffisant quel quantité de swap me conseillez vous? Est-ce que 600Mio suffirait?

----------

## pepit

Bon, j'ai passé cette étape en upgradant ma RAM à 256 Mio et SWAP à 600 Mio.

Hélas il me semble avoir une autre erreur de compilation du kernel, mais c'est un autre sujet...

----------

## xaviermiller

Bonjour,

utilises-tu distcc ? C'est fortement conseillé pour ce genre de configuration.

----------

## pepit

d'après wikipédia : distcc est un logiciel libre qui permet de distribuer les tâches de compilation d'un code source en C, C++ ou Objective C entre plusieurs machines en réseau...

Je ne pense pas m'en servir j'usqu'à lors, du reste je ne sais pas vraiment à quoi ça sert! et encore moins comment l'utiliser!  :Very Happy:   Je suppose que c'est pour soulager la machine qui compile en répartissant la tache sur d'autre machine du réseau? Peut être via ssh que j'utilise?

En tout cas mon ex problème de compilation du kernel venais il semble d'un bug répertorié. J'ai simplement relancé un genkernel -all --menuconfig et désactivé ce qui me semblai provoquer le problème et ça a marché.Last edited by pepit on Wed Jan 23, 2013 3:01 pm; edited 1 time in total

----------

## xaviermiller

Oui, c'est bien cela.

Si tu as d'autres machines Gentoo dans le coin (même AMD64 ou ARM ou autre), utilise-les pour soulager cette bonne vieille machine.

http://www.gentoo.org/doc/en/distcc.xml

----------

## pepit

j'ai 2 autres machines linux sur le réseau mais pas encore Gentoo : Mandriva 10 sur athlon 64 et instan one "upgradé" sur portable dell d600 ça pourrai le faire?

----------

## 256JMaN

Bonsoir

Pour faire simple il faudrait que tu ais une distribution pour la même architecture de processeur (i586, x86_64, etc ...)

Sinon il faut faire de la compilation croisé ( http://www.gentoo.org/doc/fr/cross-compiling-distcc.xml ) le distcc sous mandriva ca ne doit pas être trop difficile a mettre en place ... mais la compilation croisé je suis moins sur. 

Je regarde ta config et je me dit que niveau du disque dur tu dois être vraiment juste (gcc demande environ 2go pendant la compilation par exemple) et le répertoire ou sont stocké les sources prend rapidement de la place, sur ma machine il occupe 3,5Go et je viens de faire un coup de ménage dedans ! 

Peut être qu'il sera nécessaire de faire quelques modifications pour grappiller un peu d'espace (déporter tes sources sur un partage NFS, supprimer la documentation, compresser l'arbre de portage (quoi que l'astuce dans le forum n'as plus l'air de fonctionner maintenant  :Sad: ) ...) 

Un autre moyen pour compiler tes sources sans solliciter ta vieille machine serait de construire ta gentoo sur une machine plus véloce dans une machine virtuel, avec un peu de chance tu as quasiment le même matériel qui t'es proposé sur virtualbox. Suffit d'ajouter FEATURES="buildpkg" à ton make.conf et tu n'as plus qu'a configurer ta vieille machine pour se servir dans les packages que tu as compilé  

Bref, monter une Gentoo sur une vieille machine, c'est pas ce qu'il y a de plus simple mais il y a souvent une solution pour chaque problèmes !

(mince ! et dire que je n'ai pas suffisamment de doigts pour compter le nombre de pentium 4 que j'ai balancer ces deux dernières semaines !)

----------

## pepit

Pas tant de place que ça : apparemment seulement 1/4 du disque de 10Gio est occupé. du reste j'ai réussi à compiler le noyau : 4h00 à chaque fois tout de même!

Bon il n'est pas encore fonctionnel pour d'autres raisons, donc je vais devoir recompiler d'autres noyaux et vos tuyaux sont très intéressants, je vais tenter de m'y coller histoire de compliquer un peu plus , j'en suis plus à ça prèt  :Wink: 

Après recherches, je laisse tomber crossdev car j'ai rien trouvé d’intéressant pour l'installer sur mandriva. Lorsque toutes mes machines seront en Gentoo je tenterai...

----------

