Utiliser le compilateur en ligne de commande

Introduction

Le compilateur est situé dans le répertoire 'Compilers\' de la distribution PureBasic. La manière la plus simple d'y accéder est d'ajouter ce répertoire à la variable PATH de Windows, ce qui vous donnera un accès permanent à toutes les commandes de ce répertoire.

Paramètres du compilateur

/? : affiche une aide simplifiée sur le compilateur.

/COMMENTED : créé un fichier de sortie '.asm' commenté en même temps que l'exécutable. Ce fichier peut être ré-assemblé ultérieurement après l'avoir modifié selon vos besoins. Cette option est à destination des programmeurs avancés.

/DEBUGGER : active le débogueur.

/EXE "NomFichier" : créé un fichier exécutable indépendant spécifié par NomFichier.

/ICON "IconName" : Ajoute l'icône spécifiée par IconName dans l'exécutable.

/INLINEASM : Active la fonction assembleur en ligne (des routines asm peuvent être écrites directement dans le code source BASIC).

/RESIDENT "NomFichier" : Crée un fichier résident spécifié par NomFichier.

/CONSOLE: le fichier de sortie est au format Console. Le format par défaut est Win32.

/DLL: le fichier de sortie est une DLL.

/NT4: Intègre la compatibilité NT4 pour les fonctions multimédia (Sprite, Keyboard, Mouse).

/XP: Ajoute le support des thèmes ('skins') pour Windows XP.

/REASM: Réassemble le fichier PureBasic.asm file en fichier exécutable. Ceci permet d'utiliser la fonction /COMMENTED, de modifier le fichier de sortie asm et de recréer un exécutable.

/LINENUMBERING: Ajoute des informations concernant les lignes et les fichiers sources à l'exécutable, qui peut le ralentir considérablement. Cela a été concu pour fonctionner en conjonction avec la bibliothèque OnError.

/QUIET: Désactive toutes les éditions de texte inutiles. Très pratique lorsque vous utilisez un éditeur tiers.

/STANDBY: Charge le compilateur en mémoire, lequel attend de commandes externes (éditeurs, scripts...).

/MMX, /3DNOW, /SSE or /SSE2: Génère un exécutable spécifique à un type de processeur. Si une routine est disponible dans une version optimisée pour le type de processeur choisi, elle sera utilisée. Du coup, l'exécutable ne fonctionnera correctement que sur ce type de processeur.

/DYNAMICCPU: Génère un exécutable qui contient toutes les versions des routines spécialement optimisées pour un type de processeur. Quand le programme se lance, il déterminera dynamiquement le type du processeur et choisira les routines les plus adaptées. Cela produit un exécutable plus gros mais plus rapide.

/RESOURCE "NomFichier": Ajoute un fichier de resource Windows (.rc) à l'exécutable ou la DLL. Ce fichier ne doit pas être un fichier resource compilé, mais un fichier texte contenant des directives. Il est possible de ne specifier qu'un seul fichier resource, mais il peut en inclure d'autre si besoin est, à l'aide des directives adéquates.
/LINKER "FichierCommandes": Spécifie un fichier qui contient des commandes à passer directement au linker. Sur Windows, PureBasic utilise le linker de PellesC (polink), plus d'informations à propos des options possible sont disponible dans l'aide de PellesC.

/IGNORERESIDENT "Fichier": Ne charge pas le fichier résident quand au démarrage du compilateur. C'est principalement utilisé quand un mise à jour d'un fichier résident déjà existant est nécessaire (en conjonction avec /CREATERESIDENT).

/CONSTANT Nom=Valeur: Crée la constante spécifiée avec la valeur indiquée.
Exemple: 'pbcompiler test.pb /CONSTANT MaConstante=10'. La constante #MaConstante sera créée automatiquement avec la valeur 10 avant de commencer la compilation. Très utile pour faire de la compilation ciblée à partir de scripts.

The following two compiler options are needed for creating programs running on Microsoft Vista OS. They are both options for the included manifest, so they are ignored on older windows versions. With none of these switches, the exe will run as a normal user as well, but with virtualisation turned on (i.e. registry and file redirection). It is recommended to use the /USER switch to turn of virtualisation for all programs that comply to the standard user priviledges, as it is only intended for compatibility for older programs. These options are also available in the IDE compiler options.
/ADMINISTRATOR: Will cause the program to request admin priviledges at start. The program will not run without it. This option is needed. Note: You can also debug programs with this flag, but only with the standalone gui debugger (as it must run in elevated mode as well).
/USER: The program will run as the user who started it. Virtualisation for the exe is turned off.

Exemple:

    CLI> pbcompiler codesource.pb
  
Le compilateur compile le code 'codesource.pb' et l'exécute.
    CLI> pbcompiler codesource.pb /DEBUGGER /INLINEASM
  
Le compilateur compile le code 'codesource.pb' et l'exécute avec le débogueur actif en autorisant l'assembleur en ligne.
    CLI> pbcompiler "C:\Project\Source\DLLSource.pb" /EXE "C:\Projet\projet.dll" /DLL
  
Le compilateur compile le code 'DLLSource.pb' (ici avec le chemin complet) et crée la DLL "projet.dll" à l'emplacement indiqué.