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

EDI Delphi Discussion :

Compilation en ligne de commande


Sujet :

EDI Delphi

  1. #1
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    32
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2011
    Messages : 32
    Points : 13
    Points
    13
    Par défaut Compilation en ligne de commande
    Bonjour,

    Je dispose d'un projet en Delphi pour lequel on m'a demandé d'automatiser les compilations en mode release. Il s'agit d'un gros projet - qui de plus est commercialisé - et il est très peu pratique de devoir vérifier que tous les sous projets soient en mode release avant de compiler. La solution serait donc de compiler en ligne de commande. D'après ce que j'ai lu, par défaut tout est mis en release.
    Maintenant là où je sèche c'est pour inclure les unités. Il y en a un bon paquet et ce que j'aimerais savoir c'est si il y a un moyen de les inclure sans spécifier le chemins de chacune d'entre elles ou bien si je dois me résigner ?

  2. #2
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 459
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 13 459
    Points : 24 873
    Points
    24 873
    Par défaut
    Diriges toi vers FinalBuilder !
    Perso, je l'ai utiliser en version 2 et 4, je crois que la 7 est fourni avec XE

    Il te permettra de compiler Paquets et Projets, de générer les archives des sources, d'appeler le constructeur d'install, ...

    Sinon pour l'utilisation en pure ligne de commande, j'ai déjà vu cela où mon prédecesseur avait en gros fait son propre FinalBuilder, je n'ai jamais regardé en détail tous les paramètres qui était passé !

    Le fichier DPR du projet indique normalement les "includes" du projet, on peut penser qu'en compilant un DPR, cela fasse déjà une bonne partie de la compilation ...
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

  3. #3
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    32
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2011
    Messages : 32
    Points : 13
    Points
    13
    Par défaut
    Est-ce qu'il permet de gérer le mode release sur l'ensemble ? Car c'est surtout ça que je cherche à faire

  4. #4
    Expert éminent sénior
    Avatar de Paul TOTH
    Homme Profil pro
    Freelance
    Inscrit en
    Novembre 2002
    Messages
    8 964
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2002
    Messages : 8 964
    Points : 28 445
    Points
    28 445
    Par défaut
    Qu'entends tu pas "inclure les unités" ?!

    DCC32.EXE compile un .DPR avec toutes les unités liées, si le .DPR est bien fait avec des "uses unit1 in '..\path\unit1.pas'" il ne faut rien de plus !

    tu peux ajouter des paramètres sur la ligne de commande ou utiliser le .CFG du projet (ou le .OPT je sais jamais lequel est pour DCC et lequel est en mode GUI)

    la dépendance explicite des unités est un gros avantage pour la compilation
    Developpez.com: Mes articles, forum FlashPascal
    Entreprise: Execute SARL
    Le Store Excute Store

  5. #5
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    32
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2011
    Messages : 32
    Points : 13
    Points
    13
    Par défaut
    Inclure notamment les unités JVCL et JCL. Pour les autres je ne sais pas si tout a été correctement inclus car ce n'est pas moi qui ait codé tout ça et qu'en plus je débute en Delphi. Mais en tout cas quand je veux compiler avec dcc32, il me met qu'il y a des unités manquantes, celles que j'ai cité au dessus

    Et sinon d'après ce que j'ai lu, il ne suffit pas juste de les définir explicitement dans le code pour que ça compile

  6. #6
    Expert éminent
    Avatar de Lung
    Profil pro
    Analyste-programmeur
    Inscrit en
    Mai 2002
    Messages
    2 664
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste-programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 664
    Points : 6 967
    Points
    6 967
    Par défaut
    Citation Envoyé par Weirdy Voir le message
    il me met qu'il y a des unités manquantes
    Ca doit vouloir dire que Delphi ne trouve pas ces unités. Qu'elles ne sont pas dans les chemins de recherche de Delphi.
    Il te suffit juste de les rajouter.

    L'urgent est fait, l'impossible est en cours, pour les miracles prévoir un délai. ___ Écrivez dans un français correct !!

    C++Builder 5 - Delphi 6#2 Entreprise - Delphi 2007 Entreprise - Delphi 2010 Architecte - Delphi XE Entreprise - Delphi XE7 Entreprise - Delphi 10 Entreprise - Delphi 10.3.2 Entreprise - Delphi 10.4.2 Entreprise - Delphi 11.1 Entreprise
    OpenGL 2.1 - Oracle 10g - Paradox - Interbase (XE) - PostgreSQL (15.4)

  7. #7
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    32
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2011
    Messages : 32
    Points : 13
    Points
    13
    Par défaut
    Où dois-je les ajouter exactement ?

  8. #8
    Expert éminent sénior
    Avatar de Paul TOTH
    Homme Profil pro
    Freelance
    Inscrit en
    Novembre 2002
    Messages
    8 964
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2002
    Messages : 8 964
    Points : 28 445
    Points
    28 445
    Par défaut
    Projet -> Options : "Répertoires/Conditions"

    Chemin de recherche [..\blahblab\JCL\Source]

    cela doit mettre à jour le .CFG avec l'option -I (ou -U je sais plus) que tu peux aussi préciser en paramètre de DCC32
    Developpez.com: Mes articles, forum FlashPascal
    Entreprise: Execute SARL
    Le Store Excute Store

  9. #9
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    32
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2011
    Messages : 32
    Points : 13
    Points
    13
    Par défaut
    Merci pour ta réponse mais je vois que tous les chemins sont déjà indiqués

  10. #10
    Membre expérimenté
    Avatar de ouiouioui
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Août 2006
    Messages
    984
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2006
    Messages : 984
    Points : 1 418
    Points
    1 418
    Par défaut
    Quel version de Delphi ?
    A partir de Delphi 2007 msbuild simplifie tout ex :
    msbuild xxxx.dproj /target:Build /p:config=Release
    Moi je te conseille Precision Builder Express tu peux créer des config de release complexe rapidement et très poussé avec le support du scripting (comme inno setup)
    Il existe 3 sortes de gens: ceux qui savent compter et ceux qui ne savent pas.

  11. #11
    Expert éminent sénior
    Avatar de Paul TOTH
    Homme Profil pro
    Freelance
    Inscrit en
    Novembre 2002
    Messages
    8 964
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2002
    Messages : 8 964
    Points : 28 445
    Points
    28 445
    Par défaut
    Citation Envoyé par Weirdy Voir le message
    Merci pour ta réponse mais je vois que tous les chemins sont déjà indiqués
    je me souviens avoir eu un problème de longueur de path avec Delphi 5, la compilation se faisait sans problème dans l'IDE mais plantait en ligne de commande. J'ai du tout déplacer vers la racine du disque...faut dire que Windows et le produit Microsoft de compilation de solutions dont le nom m'échappe produisent des répertoires à rallonge aussi
    Developpez.com: Mes articles, forum FlashPascal
    Entreprise: Execute SARL
    Le Store Excute Store

  12. #12
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    32
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2011
    Messages : 32
    Points : 13
    Points
    13
    Par défaut
    Citation Envoyé par Paul TOTH Voir le message
    je me souviens avoir eu un problème de longueur de path avec Delphi 5, la compilation se faisait sans problème dans l'IDE mais plantait en ligne de commande. J'ai du tout déplacer vers la racine du disque...faut dire que Windows et le produit Microsoft de compilation de solutions dont le nom m'échappe produisent des répertoires à rallonge aussi
    Les miens sont déjà tous à la racine

  13. #13
    Expert éminent sénior
    Avatar de Paul TOTH
    Homme Profil pro
    Freelance
    Inscrit en
    Novembre 2002
    Messages
    8 964
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2002
    Messages : 8 964
    Points : 28 445
    Points
    28 445
    Par défaut
    je viens de tester

    C:\TEST\LIB\UNIT1.PAS
    C:\TEST\SRC\PROJET1.DPR
    C:\TEST> DCC32 SRC\PROJET1.DPR -ULIB

    ça fonctionne

    pour que la commande suivante fonctionne

    C:\TEST\SRC> DCC32 PROJET1

    il faut alors ajouter C:\TEST\SRC\PROJET1.CFG qui contient :

    -U..\LIB
    -O..\LIB
    TEST.zip
    Developpez.com: Mes articles, forum FlashPascal
    Entreprise: Execute SARL
    Le Store Excute Store

  14. #14
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    32
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2011
    Messages : 32
    Points : 13
    Points
    13
    Par défaut
    Ok ça marche avec ça mais dans ton TEST tu n'as rien avec des JVCL et JCL car ce sont ces unités là qui manquent

  15. #15
    Expert éminent sénior
    Avatar de Paul TOTH
    Homme Profil pro
    Freelance
    Inscrit en
    Novembre 2002
    Messages
    8 964
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2002
    Messages : 8 964
    Points : 28 445
    Points
    28 445
    Par défaut
    Citation Envoyé par Weirdy Voir le message
    Ok ça marche avec ça mais dans ton TEST tu n'as rien avec des JVCL et JCL car ce sont ces unités là qui manquent
    oui, mais c'est une unité dans un autre répertoire; le principe est le même.

    tu dois simplement donner tous les répertoires contenant des unités de JVCL ou JCL avec un séparateur ";".
    Developpez.com: Mes articles, forum FlashPascal
    Entreprise: Execute SARL
    Le Store Excute Store

  16. #16
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    32
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2011
    Messages : 32
    Points : 13
    Points
    13
    Par défaut
    D'accord merci mais c'était justement ma question ! Savoir si j'étais obligée de tous les nommer un par un ...

  17. #17
    Expert éminent sénior
    Avatar de Paul TOTH
    Homme Profil pro
    Freelance
    Inscrit en
    Novembre 2002
    Messages
    8 964
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2002
    Messages : 8 964
    Points : 28 445
    Points
    28 445
    Par défaut
    Citation Envoyé par Weirdy Voir le message
    D'accord merci mais c'était justement ma question ! Savoir si j'étais obligée de tous les nommer un par un ...
    ah ok, je n'avais pas lu ta question dans ce sens.

    tu n'es pas obligé de donner le chemin de chaque unité, mais bien de donner tous les chemins contenant des unités

    la différence subtile est que si un chemin contient 15 unités, il n'est donné qu'une fois

    tu peux aussi créer un répertoire /lib et coller toutes les unités dedans.
    Developpez.com: Mes articles, forum FlashPascal
    Entreprise: Execute SARL
    Le Store Excute Store

  18. #18
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    32
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2011
    Messages : 32
    Points : 13
    Points
    13
    Par défaut
    Ok merci beaucoup.

  19. #19
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    32
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2011
    Messages : 32
    Points : 13
    Points
    13
    Par défaut
    Citation Envoyé par ouiouioui Voir le message
    Quel version de Delphi ?
    A partir de Delphi 2007 msbuild simplifie tout ex :


    Moi je te conseille Precision Builder Express tu peux créer des config de release complexe rapidement et très poussé avec le support du scripting (comme inno setup)
    Et comment sont gérés les unités là dedans ?

  20. #20
    Membre expérimenté
    Avatar de ouiouioui
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Août 2006
    Messages
    984
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2006
    Messages : 984
    Points : 1 418
    Points
    1 418
    Par défaut
    tu répond toujours pas si ta Delphi 2007 ou +
    parce que msbuild simplifie beaucoup.

    dans precision builder tu pose l'action msbuild et tu lui donne l'emplacement de ton fichier projet. c'est tout.

    sinon pour dcc32 ta un ex dedans par moi avec quelques action sa démontre comment récupérer les chemins dans le registre. les additionner et les passer à dcc avec le fichier projet. Sa évite d'avoir a régler à nouveau si on modifie dans Delphi
    Il existe 3 sortes de gens: ceux qui savent compter et ceux qui ne savent pas.

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 3 123 DernièreDernière

Discussions similaires

  1. [WebForms][CR] Compilation en ligne de commande et etat Crystal
    Par David.V dans le forum Général Dotnet
    Réponses: 4
    Dernier message: 01/02/2009, 23h58
  2. Compiler en ligne de commande
    Par groumff dans le forum Visual C++
    Réponses: 1
    Dernier message: 19/09/2007, 11h59
  3. Compilation en ligne de commande
    Par bbdanix dans le forum NetBeans
    Réponses: 1
    Dernier message: 11/06/2006, 11h35
  4. compiler en ligne de commandes avec dev-cpp
    Par yashiro dans le forum Dev-C++
    Réponses: 8
    Dernier message: 30/03/2006, 19h14
  5. Compilation par ligne de commande
    Par Dupont Lionel dans le forum MFC
    Réponses: 2
    Dernier message: 21/10/2005, 13h29

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