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

Free Pascal Discussion :

[Free Pascal] Aide concernant 'make file'


Sujet :

Free Pascal

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif
    Avatar de diden138
    Profil pro
    Développeur Web
    Inscrit en
    Mai 2006
    Messages
    714
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2006
    Messages : 714
    Par défaut [Free Pascal] Aide concernant 'make file'
    Salut, bon je viens de terminer mon tp d'algo 'simulateur d'un gestionnaire de bibliothèque'. Est-ce possible avec FreePascal de créer un package pour que mon prog marche sur n'importe quelle machine ou sorte d'environnement ? J'ai cherché dans la doc de free mais j'ai pas trouvé grand chose. Mais je sais que 'make file' a un rapport avec ceci mais je sais pas comment m'y prendre.
    Merci encore.
    ps: toute suggestion sera la bienvenue.
    @++

  2. #2
    Membre Expert
    Avatar de Eric Sigoillot
    Inscrit en
    Mars 2002
    Messages
    1 212
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 212
    Par défaut
    Bonjour,

    Une suggestion : le Pascal ne s'appuie pas sur des makefiles. Un makefile est nécessaire pour compiler un ensemble de fichiers et les lier ensemble, lorsque le compilateur ne le fait pas seul : c'est le cas du C, du C++ ou du Java, qui font de la compilation unitaire, un fichier à la fois. Et si lors de l'édition de lien il manque un module, ça échoue.
    Le Pascal passe aussi, comme tout compilateur, par une compilation et une édition de liens. La différence réside dans le fait que les compilateurs Pascal fonctionnent "intelligemment", autrement dit ils savent seuls quelles unités utiliser. C'est donc une compilation monolithique.

    Pour faire un package multiplateforme, il faut compiler pour du multiplateforme. Si tu disposes des environnements sur lesquels tu souhaites que ton programme tourne (Windows, Linux, ...), alors compile ton programme sur ces environnements. Sinon, il faut faire du "cross compiling", autrement dit compiler sur un environnement un exécutable destiné à tourner sur un autre environnement. Ce n'est pas toujours possible du fait du manque de librairies.

    Une fois que tu as les exécutables que tu veux, il te suffit de faire un script : un Batch (.bat) sous Windows/Dos qui vérifie si on est sous Windows ou Dos (cf la commande VER du Dos) et lance la version Dos ou Windows, et un script Sh (.sh) sous Unix (Linux, Mac, ...) qui vérifie la plateforme (cf la commande uname) et lance ce qu'il faut.

    @++

  3. #3
    Membre très actif
    Avatar de diden138
    Profil pro
    Développeur Web
    Inscrit en
    Mai 2006
    Messages
    714
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2006
    Messages : 714
    Par défaut bonjour,
    je viens de trouver un lien interessant http://gl.developpez.com/tutoriel/outil/makefile/#L0
    parcontre j'ai rien compris ..puisque ca concerne le langage c .
    parcontre pour ta suggestion je la trouve interressante pendant ce temp la je vais continuer a chercher

  4. #4
    Membre émérite Avatar de Tuxico
    Profil pro
    Étudiant
    Inscrit en
    Août 2003
    Messages
    662
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2003
    Messages : 662
    Par défaut
    parcontre pour ta suggestion je la trouve interressante pendant ce temp la je vais continuer a chercher
    pourquoi chercher alors que tu dois applique rla solution que t'as donné Eric?

  5. #5
    Membre très actif
    Avatar de diden138
    Profil pro
    Développeur Web
    Inscrit en
    Mai 2006
    Messages
    714
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2006
    Messages : 714
    Par défaut Salut;
    reflexion philisofique interessante de ta part tuxico..
    non mais je veux dire que tous ce qui a quelque indice une autre idée elle sera la bienvenu

  6. #6
    Membre Expert
    Avatar de Eric Sigoillot
    Inscrit en
    Mars 2002
    Messages
    1 212
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 212
    Par défaut
    Ben on attend que l'expression "pas de makefiles en Pascal" arrive jusqu'à ton cerveau... Pour la 2ème fois, tu en trouveras en C, en Java, ..., mais pas en Pascal car c'est une compilation monolothique.

    Mais bon, hein, on va pas insister.

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

Discussions similaires

  1. [Free Pascal] Aide pour comprendre une erreur de compilation
    Par SimoBenz dans le forum Free Pascal
    Réponses: 7
    Dernier message: 05/12/2006, 18h43
  2. [Free Pascal] Besoin d'aide pour un programme
    Par ricomix dans le forum Free Pascal
    Réponses: 3
    Dernier message: 04/06/2006, 17h01
  3. Réponses: 1
    Dernier message: 25/03/2006, 21h26
  4. [Free Pascal] Aide en ligne
    Par Gnux dans le forum Free Pascal
    Réponses: 1
    Dernier message: 27/01/2006, 12h30
  5. [Lazarus] Aide Lazarus Free Pascal
    Par JoseF dans le forum Lazarus
    Réponses: 1
    Dernier message: 05/03/2005, 17h24

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