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

Linux Discussion :

Gcc - virtual mémory exhausted


Sujet :

Linux

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    98
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 98
    Points : 75
    Points
    75
    Par défaut Gcc - virtual mémory exhausted
    Bonjour à tous

    J'ai une question qui relève des sciences occultes à poser. Je crains de n'avoir pas trouver le forum approprié aussi je m'excuse par avance si il est mal placé.

    J'ai un code source que je dois faire marcher sur Linux et sur Lynx. Le développemnt a donc eu lieu sur Linux et je peux affirmer que le soruce compile et qu'il marche. Cela a été testé sur LINUX

    Le problème survient lorsque je porte sur LYNX (OS4). Parmis tous les fichiers que je compile il y en a certains qui sont générés automatiquement dont un qui fait qq 36000 lignes. Il contient une fonction qui fait 23000 lignes.

    Lorsque gcc essaye de compiler ce fichier il me sort le message suivant : "virtual memory exhausted". En utilisant un bon ps -axm, je vois en effet que la mémoire virtuelle utilisée monte à plus de 4000000 kbytes ce qui est abérant. C'est le process de gcc qui craque....


    J'ai essayé de modifier les tailles de la pile et des data pour contourner le problème mais cela n'a rien arrangé.

    En tournant sur le net j'ai vu que peut être certaines version de gcc étaient buguées et pouvaient entrainer ce message d'erreur. QQ'un a til déja entendu parler de cela?


    Je précise également que je compile sans utiliser les options d'optimisation de gcc (-O1, -O2 etc..).


    Ma version de gcc est la 2.95.3
    Mon os est LYNXOS 4


    QQ'un a til une idée sur ce point?
    J'avoue que je suis plutot largué. Le truc trés embettant c'est que je ne peux pas influer sur la taille du fichier généré automatiquement et que je suis condamné à l'utiliser tel quel....

    Merci d 'avance pour l'aide que vous pourriez m'apporter.

    Un developpeur au bout d'une corde., Seb

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    98
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 98
    Points : 75
    Points
    75
    Par défaut
    Pour info cela ne marche pas non plus mme avec une vers ion plus récente de gcc (3.8)

    Vraiment personne n'a d'idées?

  3. #3
    Membre expérimenté
    Inscrit en
    Décembre 2004
    Messages
    1 478
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 478
    Points : 1 664
    Points
    1 664
    Par défaut
    Citation Envoyé par traiangueul
    Vraiment personne n'a d'idées?
    C'est une question vraiment difficile. Ton probleme peut etre du a un bug de gcc, ou au fait que ta machine n'a pas les capacites pour compiler des fonctions aussi grandes (et potentiellement complexes). Comme LynxOS est un OS temps reel pour systemes embarques, j'imagine que ta machine a des ressources limitees.
    Je ne vois que deux solutions:
    - fournir un rapport de bug a l'equipe de developpement de gcc. Ils ne sont peut-etre pas au courant d'un probleme avec LynxOS.
    - faire une cross-compilation sous Linux avec LynxOS comme cible (si les autotools qui vont bien sont disponibles).

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    98
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 98
    Points : 75
    Points
    75
    Par défaut
    Désolé pour la réponse tardive...

    Merci a toi pour tes conseils.

    En fait j'ai eu la chance de pouvoir contourner le problème.
    J'avais dit :

    Le truc trés embettant c'est que je ne peux pas influer sur la taille du fichier généré automatiquement et que je suis condamné à l'utiliser tel quel....
    Et je me trompais.
    J'ai pu généré un code légerement différent qui a permis de réduire la taille du fichier posant des probèmes ce qui fait que maintenant il compile.

    Mais apres enquete je me dis que c'est sans doutes du a leur machine qui n'avait que 1% de libre sur le disque system. Ca aide pas.


    Voila pour les niouzes...
    Merci encore

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. gcc et win32
    Par MatRem dans le forum Autres éditeurs
    Réponses: 1
    Dernier message: 16/01/2003, 12h22
  2. getch() avec gcc
    Par Jorus dans le forum Autres éditeurs
    Réponses: 5
    Dernier message: 16/12/2002, 14h47
  3. Réponses: 1
    Dernier message: 13/11/2002, 20h34
  4. Abstract VS virtual
    Par LE CHAKAL dans le forum Langage
    Réponses: 2
    Dernier message: 29/08/2002, 17h50
  5. [Kylix] gcc et kylix
    Par alexsmadja dans le forum EDI
    Réponses: 1
    Dernier message: 28/05/2002, 10h00

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