Créer EXE en codant
Créer EXE en codant
Bonsoir,
Est-il possible de créer un exécutable (pb) sans passer par le menu de l'EDI? (c'est à dire en codant)
Merci
Est-il possible de créer un exécutable (pb) sans passer par le menu de l'EDI? (c'est à dire en codant)
Merci
Win7 (x64) 64 bits Pb 5.72
Re: Créer EXE en codant
Bonsoir,
En ligne de commande tu veux ? Si c'est sa tu peut en effet via le "pbcompiler.exe" dans le dossier de purebasic.
@++
En ligne de commande tu veux ? Si c'est sa tu peut en effet via le "pbcompiler.exe" dans le dossier de purebasic.
@++
Windows 10 x64, PureBasic 5.73 x86 & x64
GPU : radeon HD6370M, CPU : p6200 2.13Ghz
GPU : radeon HD6370M, CPU : p6200 2.13Ghz
- microdevweb
- Messages : 1802
- Inscription : mer. 29/juin/2011 14:11
- Localisation : Belgique
Re: Créer EXE en codant
Tu peux créé un fichier Pb par exemple dynamiquement, ensuite tu peux lancer le compilateur en ligne de commande.
https://www.purebasic.com/french/docume ... piler.html
https://www.purebasic.com/french/docume ... piler.html
Windows 10 64 bits PB: 5.70 ; 5.72 LST
Work at Centre Spatial de Liège
Work at Centre Spatial de Liège
Re: Créer EXE en codant
Bonjour,
J'avais posé le même type de question il y a quelques temps.
http://www.purebasic.fr/french/viewtopi ... =1&t=15670
La réponse s'y trouve certainement.
Gérard
J'avais posé le même type de question il y a quelques temps.
http://www.purebasic.fr/french/viewtopi ... =1&t=15670
La réponse s'y trouve certainement.
Gérard
■ Win10 Pro 64-bit (Intel Celeron CPU N2920 @ 1.86GHz, 4,0GB RAM, Intel HD Graphics) & PB 6.12 LTS
■ Vivre et laisser vivre.
■ PureBasic pour le fun
■ Gérard sur le forum Anglais
■ Mes sites: http://pbcage.free.fr - http://yh.toolbox.free.fr
■ Vivre et laisser vivre.
■ PureBasic pour le fun
■ Gérard sur le forum Anglais
■ Mes sites: http://pbcage.free.fr - http://yh.toolbox.free.fr
Re: Créer EXE en codant
@Cage, j'ai vu ton post à ce sujet :
Est ce correct?
Code : Tout sélectionner
Monprog$="prog.pb"
Purebasic$="c:\program files\purebasic.exe"
RunProgram (Purebasic$, "/build " + Monprog$, #Null$, #PB_Program_Wait)
Win7 (x64) 64 bits Pb 5.72
Re: Créer EXE en codant
(venom et microdevweb ont donné la bonne réponse.)
C:\Program Files\PureBasic\purebasic.exe
C'est l'IDE de PB. Tu peux le lancer en batch, mais ça n'est utile que pour un projet
http://www.purebasic.com/french/documen ... dline.html
Pour compiler un seul EXE, utilise le compilateur en ligne de commande
C:\Program Files\PureBasic\Compilers\pbcompiler.exe
http://www.purebasic.com/french/documen ... piler.html
Note que pour qu'une application cliente génère un EXE PB, il faudrait que ton utilisateur dispose déjà de PB installé (licence)
De plus, un EXE qui génère un EXE est souvent considéré comme une menace par tout anti-virus.

C:\Program Files\PureBasic\purebasic.exe
C'est l'IDE de PB. Tu peux le lancer en batch, mais ça n'est utile que pour un projet
http://www.purebasic.com/french/documen ... dline.html
Pour compiler un seul EXE, utilise le compilateur en ligne de commande
C:\Program Files\PureBasic\Compilers\pbcompiler.exe
http://www.purebasic.com/french/documen ... piler.html
Note que pour qu'une application cliente génère un EXE PB, il faudrait que ton utilisateur dispose déjà de PB installé (licence)
De plus, un EXE qui génère un EXE est souvent considéré comme une menace par tout anti-virus.

Re: Créer EXE en codant
@omega
J'utilise toujours des fichiers *.pbp pour mes applications.
Pourquoi:
Plus facile pour compiler en 32 et 64-bit en mode batch
Toutes les informations importantes de l'exe sont dans les fichiers *.pbp
J'ai donc 2 fichiers *.pbp par application.
Exemple pour mon projet YHLE
yhle32.pbp et yhle64.pbpPour moi, cette solution ne présente que des avantages.
Toutes les sources PB disponibles sur mon site utilisent cette méthode.
Mais a chacun sa façon de faire.
Si cela peut t'aider.
J'utilise toujours des fichiers *.pbp pour mes applications.
Pourquoi:
Plus facile pour compiler en 32 et 64-bit en mode batch
Toutes les informations importantes de l'exe sont dans les fichiers *.pbp
J'ai donc 2 fichiers *.pbp par application.
Exemple pour mon projet YHLE
yhle32.pbp et yhle64.pbp
Code : Tout sélectionner
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://www.purebasic.com/namespace" version="1.0" creator="PureBasic 5.42 LTS (Windows - x64)">
<section name="config">
<options closefiles="0" openmode="1" name="YHLE Project (x64)"/>
</section>
<section name="data">
<explorer view="..\..\Program Files\PureBasic\Examples\" pattern="0"/>
<log show="1"/>
<lastopen date="2016-03-14 14:43" user="gg" host="EBCAGE"/>
</section>
<section name="files">
<file name="..\pb-include.pbi">
<config load="0" scan="1" panel="1" warn="1" lastopen="1" panelstate="++"/>
<fingerprint md5="7a8335574e899ec04581ee2f5ed096ee"/>
</file>
<file name="..\pb-version.pbi">
<config load="1" scan="1" panel="1" warn="1" lastopen="1" panelstate="++"/>
<fingerprint md5="beb37972895b303fbce7415935520a8f"/>
</file>
<file name="yhle.pb">
<config load="0" scan="1" panel="1" warn="1" lastopen="1" panelstate="+"/>
<fingerprint md5="b888be68ca62df7e8cb4f0e24593d49f"/>
</file>
</section>
<section name="targets">
<target name="Default Target" enabled="1" default="1">
<inputfile value="yhle.pb"/>
<outputfile value="yhle64.exe"/>
<compiler version="PureBasic 5.42 LTS (Windows - x64)"/>
<executable value="yhle32.exe"/>
<options unicode="1" thread="1" xpskin="1" debug="1"/>
<purifier enable="1"/>
<temporaryexe value="source"/>
<icon enable="1">yhle.ico</icon>
<versioninfo enable="1">
<field0 value="16,04,0,19"/>
<field1 value="16,04,0,19"/>
<field2 value="CAGE"/>
<field3 value="YHLE"/>
<field4 value="16.04.19"/>
<field5 value="16.04.19"/>
<field6 value="YHLE - Network ToolBox"/>
<field7 value="yhle.exe"/>
<field8 value="yhle.exe"/>
<field9 value="© CAGE"/>
<field10 value="This software is the property of the author : CAGE"/>
<field11 value="0"/>
<field12 value="0"/>
</versioninfo>
</target>
</section>
</project>
Toutes les sources PB disponibles sur mon site utilisent cette méthode.
Mais a chacun sa façon de faire.
Si cela peut t'aider.
■ Win10 Pro 64-bit (Intel Celeron CPU N2920 @ 1.86GHz, 4,0GB RAM, Intel HD Graphics) & PB 6.12 LTS
■ Vivre et laisser vivre.
■ PureBasic pour le fun
■ Gérard sur le forum Anglais
■ Mes sites: http://pbcage.free.fr - http://yh.toolbox.free.fr
■ Vivre et laisser vivre.
■ PureBasic pour le fun
■ Gérard sur le forum Anglais
■ Mes sites: http://pbcage.free.fr - http://yh.toolbox.free.fr
Re: Créer EXE en codant
Pourquoi ne mets-tu pas tes versions 32 et 64 dans le même .pbp ?cage a écrit : Plus facile pour compiler en 32 et 64-bit en mode batch
Toutes les informations importantes de l'exe sont dans les fichiers *.pbp
J'ai donc 2 fichiers *.pbp par application.
Cela te permet de compiler les deux cibles en une seule passe.

Re: Créer EXE en codant
C'est possible ?
Peux-tu me dire comment je dois faire.
Merci
Peux-tu me dire comment je dois faire.
Merci
■ Win10 Pro 64-bit (Intel Celeron CPU N2920 @ 1.86GHz, 4,0GB RAM, Intel HD Graphics) & PB 6.12 LTS
■ Vivre et laisser vivre.
■ PureBasic pour le fun
■ Gérard sur le forum Anglais
■ Mes sites: http://pbcage.free.fr - http://yh.toolbox.free.fr
■ Vivre et laisser vivre.
■ PureBasic pour le fun
■ Gérard sur le forum Anglais
■ Mes sites: http://pbcage.free.fr - http://yh.toolbox.free.fr
Re: Créer EXE en codant
Dans ton projet (ouvert dans l'IDE):cage a écrit :C'est possible ?
Peux-tu me dire comment je dois faire.
- Tu cliques sur l'onglet Projet
- Tu cliques sur options du compilateur
- Tu cliques l'icône 1 ajouter une cible
- Tu remplis les options de la nouvelle cible
Si ta cible est sensiblement identiques (ex: version x86 et x64)
- Tu fais juste copier la cible (icône 2)
- Tu changes simplement pour chaque cible, le nom de l'exe et le compilateur à utiliser.
- Tu peux changer d'autres paramètres (icônes, infos de version)
Si tu veux compiler dans l'IDE pour tester, tu vas dans le menu Compilateur, puis dernière option Compiler toutes les cibles.
Tu auras les messages d'info pour chaque cible
Dans ce même menu, l'option cible par défaut indique quelle cible est générée lorsque tu presses F5

Re: Créer EXE en codant
@Marc56: Cool
Tu viens de m'ouvrir des horizons dans ma façon de procéder.
Deux répertoires (x86 et x64) et un seul fichier pbp
Et cela fonctionne parfaitement.
Les 2 versions (32/64) d'un même exe (yhle.exe) se compilent dans leur répertoire respectif.Et quand je compile toutes les ciblesJe viens encore (a mon niveau) de faire un grand pas avec PB.
Encore merci.
Gérard
Tu viens de m'ouvrir des horizons dans ma façon de procéder.
Deux répertoires (x86 et x64) et un seul fichier pbp
Et cela fonctionne parfaitement.
Les 2 versions (32/64) d'un même exe (yhle.exe) se compilent dans leur répertoire respectif.
Code : Tout sélectionner
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://www.purebasic.com/namespace" version="1.0" creator="PureBasic 5.42 LTS (Windows - x64)">
<section name="config">
<options closefiles="0" openmode="1" name="YHLE Project (x64)"/>
</section>
<section name="data">
<explorer view="..\..\Program Files\PureBasic\Examples\" pattern="0"/>
<log show="1"/>
<lastopen date="2016-04-20 20:34" user="gg" host="EBCAGE"/>
</section>
<section name="files">
<file name="..\pb-include.pbi">
<config load="0" scan="1" panel="1" warn="1" lastopen="1" panelstate="++"/>
<fingerprint md5="7a8335574e899ec04581ee2f5ed096ee"/>
</file>
<file name="..\pb-version.pbi">
<config load="1" scan="1" panel="1" warn="1" lastopen="1" panelstate="++"/>
<fingerprint md5="e48085aaedeccc7bf770d35c1767566b"/>
</file>
<file name="yhle.pb">
<config load="0" scan="1" panel="1" warn="1" lastopen="1" panelstate="+"/>
<fingerprint md5="b888be68ca62df7e8cb4f0e24593d49f"/>
</file>
</section>
<section name="targets">
<target name="Default Target (x64)" enabled="1" default="1">
<inputfile value="yhle.pb"/>
<outputfile value="x64\yhle.exe"/>
<compiler version="PureBasic 5.42 LTS (Windows - x64)"/>
<executable value="x64\yhle.exe"/>
<options unicode="1" thread="1" xpskin="1" debug="1"/>
<purifier enable="1"/>
<temporaryexe value="source"/>
<icon enable="1">yhle2.ico</icon>
<versioninfo enable="1">
<field0 value="16,04,0,20"/>
<field1 value="16,04,0,20"/>
<field2 value="CAGE"/>
<field3 value="YHLE"/>
<field4 value="16.04.20"/>
<field5 value="16.04.20"/>
<field6 value="YHLE - Network ToolBox"/>
<field7 value="yhle.exe"/>
<field8 value="yhle.exe"/>
<field9 value="© CAGE"/>
<field10 value="This software is the property of the author : CAGE"/>
<field11 value="0"/>
<field12 value="0"/>
</versioninfo>
</target>
<target name="Default Target (x86)" enabled="1" default="0">
<inputfile value="yhle.pb"/>
<outputfile value="x86\yhle.exe"/>
<compiler version="PureBasic 5.42 LTS (Windows - x86)"/>
<executable value="x86\yhle.exe"/>
<options unicode="1" thread="1" xpskin="1" debug="1"/>
<purifier enable="1"/>
<temporaryexe value="source"/>
<icon enable="1">yhle2.ico</icon>
<versioninfo enable="1">
<field0 value="16,04,0,20"/>
<field1 value="16,04,0,20"/>
<field2 value="CAGE"/>
<field3 value="YHLE"/>
<field4 value="16.04.20"/>
<field5 value="16.04.20"/>
<field6 value="YHLE - Network ToolBox"/>
<field7 value="yhle.exe"/>
<field8 value="yhle.exe"/>
<field9 value="© CAGE"/>
<field10 value="This software is the property of the author : CAGE"/>
<field11 value="0"/>
<field12 value="0"/>
</versioninfo>
</target>
</section>
</project>
Code : Tout sélectionner
--------------------------------------------------------------------------------
Building 'Default Target (x64)'...
--------------------------------------------------------------------------------
Including: ..\pb-version.pbi
Including: ..\pb-include.pbi
2234 lines compiled.
Creating executable file...
Compilation successful.
--------------------------------------------------------------------------------
Building 'Default Target (x86)'...
--------------------------------------------------------------------------------
Using compiler: PureBasic 5.42 LTS (Windows - x86)
Including: ..\pb-version.pbi
Including: ..\pb-include.pbi
2234 lines compiled.
Creating executable file...
Compilation successful.
--------------------------------------------------------------------------------
2 targets compiled successfully.
Encore merci.
Gérard
■ Win10 Pro 64-bit (Intel Celeron CPU N2920 @ 1.86GHz, 4,0GB RAM, Intel HD Graphics) & PB 6.12 LTS
■ Vivre et laisser vivre.
■ PureBasic pour le fun
■ Gérard sur le forum Anglais
■ Mes sites: http://pbcage.free.fr - http://yh.toolbox.free.fr
■ Vivre et laisser vivre.
■ PureBasic pour le fun
■ Gérard sur le forum Anglais
■ Mes sites: http://pbcage.free.fr - http://yh.toolbox.free.fr