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

Delphi Discussion :

Création d'un makefile pour compilation automatique


Sujet :

Delphi

  1. #21
    Expert confirmé
    Avatar de anapurna
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2002
    Messages
    3 421
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 421
    Points : 5 820
    Points
    5 820
    Par défaut
    salut

    je verrai bien un truc un peu dans ce genre

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     
    DEL = del /F /Q
    ...
     
    INCLUDEFLAGS = -I$(INCDIR)
     
    BUILDPATH = $(Bureau)
     
    # definir les flags du compilo
    DCCFLAGS = -B -E$(BUILDPATH) -N$(BUILDPATH) -U$(BUILDPATH) -R$(INCDIR) $(INCLUDEFLAGS) 
     
    clean :
    if exist $(BUILDPATH)\Project1.dll  $(DEL)$(BUILDPATH)\Project1.dll
     
     
    default :  clean
     $(DCC) $(DCCFLAGS) $(BUILDPATH)\My_Project_1.dpr
    @+ Phil
    Nous souhaitons la vérité et nous trouvons qu'incertitude. [...]
    Nous sommes incapables de ne pas souhaiter la vérité et le bonheur, et sommes incapables ni de certitude ni de bonheur.
    Blaise Pascal
    PS : n'oubliez pas le tag

  2. #22
    Membre régulier
    Inscrit en
    Septembre 2006
    Messages
    365
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 365
    Points : 83
    Points
    83
    Par défaut
    La ligne "if exist ..." me génère toujours une erreur !
    est-ce la syntaxe exacte??


    et puis, j'ai un problème avec les chemins avec espace dedans:
    je fais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    BuildPath = "Mon Chemin\sous-chemin1"
    quand j'écris
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Path1 = $(BuildPath)\Path1\Sous-Path1
    , ça me génère une erreur du style : Fichier introuvable "Chemin\sous-chemin1\Path1\sous-Path1" justement à cause de l'espace dans "Mon Chemin"

    par contre, si je fais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Path1 = "Mon Chemin\sous-chemin1\Path1\Sous-Path1"
    , ça roule sans problème !! ??

    Sinon, j'insiste sur la question à propos des .dcus, dois-je les créer tous avant compilation??

  3. #23
    Expert confirmé
    Avatar de anapurna
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2002
    Messages
    3 421
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 421
    Points : 5 820
    Points
    5 820
    Par défaut
    salut

    par defaut le compilateur ne compile que les unite modifier
    option M
    l'exemple que je t'ai fournit est avec l'option B pour build (construir)
    il force donc toute la recompilation des unitées

    pour ce qui est du del et du EXIST il te suffit de te mettre dans l'interpreteur de commande dos et de tapez
    pour le del => pour EXIST =>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if EXIST c:\boot.ini echo j'ai gagné

    attention au espace pour le $(BUILDPATH)
    @+ Phil
    Nous souhaitons la vérité et nous trouvons qu'incertitude. [...]
    Nous sommes incapables de ne pas souhaiter la vérité et le bonheur, et sommes incapables ni de certitude ni de bonheur.
    Blaise Pascal
    PS : n'oubliez pas le tag

  4. #24
    Membre régulier
    Inscrit en
    Septembre 2006
    Messages
    365
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 365
    Points : 83
    Points
    83
    Par défaut
    alors..
    je fais exactement ce que tu me dis
    j'ai deja été au help de "del" et de "exist", et ca n'en dit pas plus.. du coup ca m'explique pas l'erreur sur cette ligne!!
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    if exist $(DLLS)\project1.dll  $(DEL) $(DLLS)\project1.dll
    de plus, l'option -B utilisée ne me résout pas le problème des .dcus
    en fait, à chaque fois que je lance mon makefile DEMO (make -fDEMO -p), il me dit " Fichier introuvable : ...dcu"
    meme si j'en crée une tout seul, il me renvoie le meme message d'erreur avec un autre .dcu inexistant

    pour moi, les .dcus c'est les .pas compilés donc je ne comprends pas pourquoi il en a besoin pour sa compilation!!

    voici le code de mon Makefile (hormis déclarations de chemins)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
     
    #j'ai mis ces 2 lignes en commentaire car ça plantait à l'exécution sous MSDOS
    #clean :
    #if exist $(DLLS)\project1.dll  $(DEL) $(DLLS)\project1.dll
     
    INCDIR=\
    $(FWK);$(Session);$(Common);$(Helper);$(ORA);$(CRY);$(XpBase);$(DCUS)
     
    # Définit le chemin complet du compilateur en ligne de commande
    DCC=$(ROOT)\dcc32.exe -q -w -m
    #---------------------------------------------------------
    PROJECTS = Project1.dll Project2.dll Project3.dll Project4.dll 
    #---------------------------------------------------------
    default: $(PROJECTS)
    #---------------------------------------------------------
    $(PROJECTS) : 
    	$(DCC) -B -J -I$(INCDIR) -R$(INCDIR) -E$(DLLS) -N0$(DCUS) \
     	-U$(INCDIR) $(Path1)\Project1.dpr \
     	-U$(INCDIR) $(Path2)\Project2.dpr \
     	-U$(Path3)\Objet $(Path3)\DLL\Project3.dpr \
                 -U$(Path4)\Objet $(Path4)\DLL\Project4.dpr
    si les .dcus (correspondant aux différents .pas nécessaires à la compilation existent, ce code là me génère les DLLs sans problème). Par contre, si ces .dcus ne sont pas encore crées, j'ai l'erreur fichier introuvable jusquà ce que je les crée toutes!

    Est-ce normal?

    merci

  5. #25
    Membre habitué
    Inscrit en
    Août 2002
    Messages
    144
    Détails du profil
    Informations personnelles :
    Âge : 48

    Informations forums :
    Inscription : Août 2002
    Messages : 144
    Points : 157
    Points
    157
    Par défaut
    Bonjour, j'aimerais comprendre ta demarche.
    En effet, ce que tu essaie de faire manuellement, Delphi te le permet nativement. Pour cela, il faut juste créer un groupe de projets, et dans le gestionnaire de projet, faire bouton de droite, et "tout contruire depuis ici". Voir exemple ci-dessous:
    Pièce jointe 14259.

    Plus besoin de savoir la dll existe deja, et qu'il faut la supprimer, etc... C'est automatique

  6. #26
    Membre régulier
    Inscrit en
    Septembre 2006
    Messages
    365
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 365
    Points : 83
    Points
    83
    Par défaut
    merci pour le tuyau mais c'est ce qu'on faisait auparavant, et on m'a demandé d'écrire un makefile pour faciliter les livraisons..

    donc pour répondre à ta question, je veux effectivement faire ce que fait delphi nativement, mais par le biais d'un MakeFile

  7. #27
    Rédacteur

    Profil pro
    Inscrit en
    Avril 2007
    Messages
    182
    Détails du profil
    Informations personnelles :
    Âge : 57
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Avril 2007
    Messages : 182
    Points : 1 853
    Points
    1 853
    Par défaut
    Citation Envoyé par freestyler
    si les .dcus (correspondant aux différents .pas nécessaires à la compilation existent, ce code là me génère les DLLs sans problème). Par contre, si ces .dcus ne sont pas encore crées, j'ai l'erreur fichier introuvable jusquà ce que je les crée toutes!

    Est-ce normal?

    merci
    non ce n'est pas normal du tout. Il doit y avoir un problème de chemin. Est-ce que le chemin où tu génères manuellement ces DCUs fait partie de INCDIR? Il faudrait aussi vérifier le contenu des fichiers .DPR - peut-être qu'il y a des chemins en dur vers les unités.

    Bruno
    mon blog - mon site web

  8. #28
    Membre régulier
    Inscrit en
    Septembre 2006
    Messages
    365
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 365
    Points : 83
    Points
    83
    Par défaut
    qui a parlé de générer manuellement les .dcus ??

    c ça mon problème!!!!

    si je génère les .dcus manuellement avant compilation, tout se passe bien (donc c'est pas du tout une erreur de chemins)
    par contre, si j'essaie de comiler la dll directement, il me demande le chemin des .dcus alors que ces derniers n'existent pas!!

    OR, un projet vierge ne contient jamais de .dcus (sauf apres compilation des .pas), et que en plus, on me dit que l'option -B force un build complet (ce qui inclurait les .Dcus)

    qu'est ce que je dois faire au juste?
    Merci

  9. #29
    Expert confirmé
    Avatar de anapurna
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2002
    Messages
    3 421
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 421
    Points : 5 820
    Points
    5 820
    Par défaut
    salut

    je pense que tu devrais t'inspirer des makefile des projet tels que pasdoc
    ou autre ayant des makefile fonctionnel
    avant de voir ou les divergence peuvent ce trouver

    attention tu a deux chemin celui de la recherche et celui de la creation ce ne sont pas forcement les memes

    @+ Phil
    Nous souhaitons la vérité et nous trouvons qu'incertitude. [...]
    Nous sommes incapables de ne pas souhaiter la vérité et le bonheur, et sommes incapables ni de certitude ni de bonheur.
    Blaise Pascal
    PS : n'oubliez pas le tag

  10. #30
    Rédacteur


    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    7 171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 7 171
    Points : 15 060
    Points
    15 060
    Billets dans le blog
    1
    Par défaut
    Salut,
    Citation Envoyé par freestyler
    mais je répète que ce n'est pas du tout poussé et qu'on y explique juste les démarches de base!
    Oui c'est vrai mais c'est déjà pas mal, sa vocation était d'aider à mettre le pied à l'étrier. Le lecteur doit aussi faire un effort, c'est aussi comme ça qu'on apprend .

    Comme on n'a rarement de retours de la part des lecteurs il nous est difficile de savoir ce qui manque, bien que pour ce tuto j'en avais vu les limites mais faute de temps je n'ai pu aller plus loin.
    As-tu consulter les makefiles de la JVCL ?
    Pour info d'après toi combien de temps faut-il pour rédiger ce type de tutoriel ?
    Citation Envoyé par freestyler
    le pb c'est quand j'essaie de compiler un projet qui utilise des objets ou des .dcus issus d'autres projets ou d'autres emplacements
    regarde cet exemple
    #Informations provenant du fichier $(DELPHI_DIR)\dcc32.cfg
    ALIAS_UNITE=-aWinTypes=Windows;WinProcs=Windows;DbiProcs=BDE;DbiTypes=BDE;DbiErrs=BDE
    DELPHI_LIBRAIRIES="D:\Delphi\4.0\lib";"D:\Delphi\4.0\lib\Obj"

    #Informations provenant du fichier $(PROJET_NAME)\dcc32.cfg
    PACKAGE_DIR=-LE"D:\Mes documents\Projets Borland Studio\Bpl" -LN"D:\Mes documents\Projets Borland Studio\Bpl"

    #Informations liées à l'installation de Delphi
    RAVEREPORT_DIR=$(DELPHI_DIR)\RaveReports\Lib
    SMCMPNT_DIR="D:\Mes documents\Projets Borland Studio\Duns2EI\composants\smcmpnt\SOURCES"
    ALL_LIBRAIRIES=-u$(DELPHI_LIBRAIRIES);$(RAVEREPORT_DIR);$(SMCMPNT_DIR)
    la macro ALL_LIBRAIRIES sera utilisé avec dcc32.exe
    Citation Envoyé par freestyler
    et surtout, est ce que je peux définir des chemins relatifs comme dans delphi (du genre /../../path1; /../path2;......)
    Oui mais c'est un peu tordu comme manip sous MakeFile. Si je me souviens bien on référence (toujours ?) MAKEDIR :
    !ifndef ROOT
    #----------------------------------------------------------
    #Pointe sur le répertoire d'installation de Delphi \bin
    #----------------------------------------------------------
    ROOT = $(MAKEDIR)
    !endif

    # nom court
    #DELPHI_PROJET=C:\DOCUME~1\Dardenne\MESDOC~1\PROJET~1
    DELPHI_PROJET=C:\Documents and Settings\Dardenne\Mes documents\Projets Borland Studio

    #Informations provenant du fichier $(ROOT)\Bin\dcc32.cfg
    ALIAS_UNITE=-aWinTypes=Windows;WinProcs=Windows;DbiProcs=BDE;DbiTypes=BDE;DbiErrs=BDE

    #Informations provenant du fichier $(PROJET_NAME)\dcc32.cfg
    PACKAGE_DIR=-LE"$(DELPHI_PROJET)\Bpl" -LN"$(DELPHI_PROJET)\Bpl"

    #Informations liées à l'installation de Delphi
    #----------------------------------------------------------
    # l'instruction $(ROOT)\..\ remonte d'un répertoire
    #----------------------------------------------------------
    RAVEREPORT_DIR=$(ROOT)\..\RaveReports\Lib
    SMCMPNT_DIR=$(DELPHI_PROJET)\Duns2EI\composants\smcmpnt\SOURCES
    #----------------------------------------------------------
    #On place la variable root entre guillemet
    #----------------------------------------------------------
    ALL_LIBRAIRIES=-u"$(ROOT)\..\lib";"$(ROOT)\..\lib\Obj";"$(RAVEREPORT_DIR)";"$(SMCMPNT_DIR)"
    Citation Envoyé par freestyler
    - s'il faut créer tous les .DCUS avant compilation? ou ya til un moyen de les créer à la volée!
    - comment forcer la recompilation d'un projet (car qd la DLL existe, elle n'est pas regénérée à moins de l'effacer!)
    ça c'est les régles de dépendance, cf. chapitre 5 du tuto. Ensuite précise exactement le contexte.

    De mon coté j'utilise un appel à Clean.
    # Nettoyage des fichiers, force la recompilation.
    .PHONY: clean

    clean:
    @Echo Suppression des fichiers .DCU et .EXE
    @if exist *.dcu del *.dcu
    @if exist "$(PROJET_NAME).exe" del "$(PROJET_NAME).exe"
    Couplé avec un batch
    ...
    del ResultatMake.txt
    rem Force la reconstruction
    Make -fBuild -D%TYPE% clean

    rem reconstruit le projet, récupére l'affichage pour parser les chaînes conseil: et Avertissement:
    rem La directive {$Message Warn 'Test'} peut aider à tester la présence d'un warning
    Make -fBuild -D%TYPE%>ResultatMake.txt
    ...
    Citation Envoyé par freestyler
    j'ai essayé sans le "@if exist" mais le del retourne une erreur quand le fichier n'existe pas!
    Laquelle ?
    Citation Envoyé par freestyler
    et puis, j'ai un problème avec les chemins avec espace dedans:
    Place l'intégralité de la macro entre guillemet, voir l'exemple cité plus haut concernant les chemins relatifs.
    Citation Envoyé par MedGIR
    En effet, ce que tu essaie de faire manuellement, Delphi te le permet nativement.
    L'IDE de Delphi ne proposait pas, avant la version 2007, de compiler un même projet avec des directives différentes.
    Citation Envoyé par freestyler
    il me demande le chemin des .dcus alors que ces derniers n'existent pas!!
    Qui "il" le makefile ou le compilateur ?

    As-tu essayé le makefile avec les paramètre -n et -p ?
    Fichiers attachés Fichiers attachés

  11. #31
    Membre régulier
    Inscrit en
    Septembre 2006
    Messages
    365
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 365
    Points : 83
    Points
    83
    Par défaut
    d'abord, merci beaucoup de t'etre autant investi. ça prouve combien vous adorez ce que vous faites.

    avant de poster sur le forum j'avais cherché un peu partout de la documentation sur ce sujet. j'ai épuisé la documentation Borland et j'ai essayé de décortiquer le tutoriel que tu avais proposé qui était beaucoup plus détaillé que l'aide Borland deja

    je viens de m'apercevoir que la plupart de mes erreurs proviennent de la structure de mon Makefile et non pas les commandes (en fait je crois que je lis de travers les "$(Macro_Name) :" d'où les erreurs sur if et exist qui me renvoyaient juste une erreur à l'exécution (errors dans make..)

    Maintenant, j'ai essayé de mettre en oeuvre l'exemple et j'obtiens l'erreur :
    Fatal : F1027 fichier introuvable : 'System.pas' ou équivalent binaire (.dcus)

    si je vire le --noconfig (charger le dcc32.cfg par défaut, je reviens à l'erreur des .dcus introuvable!)
    peux tu m'expliquer stp ce que veut dire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    #Informations provenant du fichier $(PROJET_NAME)\dcc32.cfg
    PACKAGE_DIR=-LE"D:\Mes documents\Projets Borland Studio\Bpl" -LN"D:\Mes documents\Projets Borland Studio\Bpl"

  12. #32
    Rédacteur


    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    7 171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 7 171
    Points : 15 060
    Points
    15 060
    Billets dans le blog
    1
    Par défaut
    Salut,
    Citation Envoyé par freestyler
    peux tu m'expliquer stp ce que veut dire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    #Informations provenant du fichier $(PROJET_NAME)\dcc32.cfg
    PACKAGE_DIR=-LE"D:\Mes documents\Projets Borland Studio\Bpl" -LN"D:\Mes documents\Projets Borland Studio\Bpl"
    Indiquera au compilateur en ligne, dcc32.exe, où se trouve les BPL.
    Pour ton pb de dcu s'il ne trouve pas les fichiers c'est que le compilateur ne sait pas où les rechercher .
    Utilisant l'option -noconfig je suis obligé de retrouver dans mon makefile , plus précisement lors de l'appel au compilateur, les informations que porte le fichier de configuration dcc32.cfg utilisé par défaut par dcc32.exe

    As-tu consulté les fichiers exemples que j'ai fournis dans mon précédent post ?
    Le mieux serait que tu nous communiques l'intégralité de ton makefile ...

  13. #33
    Membre régulier
    Inscrit en
    Septembre 2006
    Messages
    365
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 365
    Points : 83
    Points
    83
    Par défaut
    c'est ça
    il sait pas où les chercher. j'essaie de m'expliquer sur ce point depuis un bon moment

    c'est normal, ils n'existent pas encore!

    pour moi, les .dcus ce sont des unités .pas compilées. --> genérées donc APRES COMPILATION !

    sinon, voici mon makefile (là dedans j'y ai mis mon premier test ou j'essaie de compiler une liste de projets : j'y arrive bien si les .dcus existent avant compilation, sinon il me demande toujours où chercher les .dcus)
    Fichiers attachés Fichiers attachés

  14. #34
    Rédacteur


    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    7 171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 7 171
    Points : 15 060
    Points
    15 060
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par freestyler
    c'est ça
    j'y arrive bien si les .dcus existent avant compilation, sinon il me demande toujours où chercher les .dcus)
    Récapitulons :
    si les .dcus existent le makefile sait les retrouver, ok ce point là est réglé.
    s'ils n'existent pas le makefile ne les recompile pas puisqu'il les recherche

    Donc, à mon avis, c'est qu'il ne sont pas dans les dépendances. CQFD !

    Dans le fichier que tu as communiqué on y trouve ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    PROJET_DIR="C:\STNV3\STNV3\V3.00.03\STNV3\V3-NV-03.00\STF-FrameWork\Version\FWK-Framework"
    Es-tu certains qu'il n'y a pas de multiple installation de ces sources ??

    Pour le moment je ne peux aller plus loin car je n'ai pas trop de temps ni Delphi sous la main.
    Sinon :
    Citation Envoyé par Laurent Dardenne
    As-tu essayé le makefile avec les paramètre -n et -p ?
    [edit]
    ALL_LIBRAIRIES=-u$(DELPHI_LIBRAIRIES);$(RAVEREPORT_DIR);$(PROJET_DIR)
    #Informations liées au projet à compiler
    PROJET_DIR="C:\STNV3\STNV3\V3.00.03\STNV3\V3-NV-03.00\STF-FrameWork\Version\FWK-Framework"
    Ici tu références une macro qui n'existe pas encore.

  15. #35
    Membre régulier
    Inscrit en
    Septembre 2006
    Messages
    365
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 365
    Points : 83
    Points
    83
    Par défaut
    excuse moi mais je comprends pas :
    Donc, à mon avis, c'est qu'il ne sont pas dans les dépendances. CQFD !

    et l'histoire de l'installation multiple.. tu peux développer un peu stp?? un tout ptit peu plus Merci bp

    (je pense que cela fera un excellent post avenir..)

  16. #36
    Expert confirmé
    Avatar de anapurna
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2002
    Messages
    3 421
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 421
    Points : 5 820
    Points
    5 820
    Par défaut
    salut

    il veut savoir si un meme nom de fichier peut se trouver a deux endroit different ?

    sinon je n'ai pas vu le chemin de tes sources (*.pas)
    pour que lui puisse les compiler il faut d'abors qu'il puisse les trouver

    @+ Phil
    Nous souhaitons la vérité et nous trouvons qu'incertitude. [...]
    Nous sommes incapables de ne pas souhaiter la vérité et le bonheur, et sommes incapables ni de certitude ni de bonheur.
    Blaise Pascal
    PS : n'oubliez pas le tag

  17. #37
    Membre régulier
    Inscrit en
    Septembre 2006
    Messages
    365
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 365
    Points : 83
    Points
    83
    Par défaut
    mes fichiers *.pas se trouvent dans le répertoire PROJET_DIR
    donc il les trouve bien gràce au "$(ALL_LIBRAIRIES)" dans mon Build.mak

  18. #38
    Rédacteur

    Profil pro
    Inscrit en
    Avril 2007
    Messages
    182
    Détails du profil
    Informations personnelles :
    Âge : 57
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Avril 2007
    Messages : 182
    Points : 1 853
    Points
    1 853
    Par défaut
    peut-être ca n'a rien a voir, mais nous avons souvent des problèmes avec dcc32 (Delphi 7) quand les noms de répertoires sont trop longs (ou bien il y a trop de niveaux hiérarchiques). Peut-être que
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    "C:\STNV3\STNV3\V3.00.03\STNV3\V3-NV-03.00\STF-FrameWork\Version\FWK-Framework"
    pose problème. Une piste serait de raccourcir ces chemins.
    B.
    mon blog - mon site web

  19. #39
    Membre régulier
    Inscrit en
    Septembre 2006
    Messages
    365
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 365
    Points : 83
    Points
    83
    Par défaut
    Non
    ce n'est pas du tout une histoire de chemin (court ou pas)
    j'ai essayé de tt mettre sur "c:\Temp" (plus court, tu meurs )
    et il me demande toujours l'emplacement des .dcus

    est ce que tu peux stp me filer la syntaxe exacte pour compiler un projet sui se trouve dans $(PROJET_DIR) et qui contient 2 unités (Unit1.pas et Unit2.pas) dans le même répertoire (les .Dcus n'existent pas pour le moment)

    merci
    ca fait plusieurs jours que je suis sur ce truc, et je n'y arrive toujours pas

  20. #40
    Rédacteur

    Profil pro
    Inscrit en
    Avril 2007
    Messages
    182
    Détails du profil
    Informations personnelles :
    Âge : 57
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Avril 2007
    Messages : 182
    Points : 1 853
    Points
    1 853
    Par défaut
    Je ne peux pas donner plus d'infos sur la syntaxe que ce qui a déjà été dit.

    Plutôt poste nous un projet minimum avec Unit1 et Unit2, tes chemins type C:\TEMP, un makefile minimum qui reproduit le problème, et j'essaierai de le faire marcher.

    Bruno
    mon blog - mon site web

Discussions similaires

  1. Création d'un makefile pour cross-compilation
    Par joffrey575 dans le forum Matériel
    Réponses: 0
    Dernier message: 11/02/2015, 16h15
  2. Réponses: 1
    Dernier message: 15/11/2010, 21h13
  3. Création de makefile pour librairie dynamique
    Par Ganondorf dans le forum Shell et commandes GNU
    Réponses: 3
    Dernier message: 12/11/2010, 08h59
  4. Makefile générique pour compilation projet C
    Par AuraHxC dans le forum Systèmes de compilation
    Réponses: 1
    Dernier message: 13/12/2007, 21h29
  5. Compiler en C à partir de windows en manuel (makefile) pour Linux
    Par _SamSoft_ dans le forum Autres éditeurs
    Réponses: 11
    Dernier message: 06/04/2007, 17h12

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