BCCOSX.EXE, le compilateur C++ pour macOS

De RAD Studio
Aller à : navigation, rechercher

Remonter à Interfaces de ligne de commande des compilateurs C++


BCCOSX.EXE est une interface de ligne de commande de BCCOSX, le compilateur C++ pour macOS.

BCCOSX.EXE est étroitement associé à BCC32.EXE

En général, l'utilisation de BCCOSX.EXE est identique à celle de BCC32.EXE, à l'exception des options suivantes (spécifiques à la plate-forme) pour macOS :

Comme les deux compilateurs partagent une base de code, la syntaxe de la commande pour le compilateur croisé BCCOSX ne comporte que quelques différences par rapport à la syntaxe pour BCC32.

Syntaxe de la ligne de commande

bccosx [option [option...}] <filename> [<filename>...]

Utilisez des espaces pour séparer le nom du compilateur, chaque option et les noms de fichiers sur la ligne de commande. Placez devant chaque option un tiret (-) ou une barre oblique (/). Par exemple :

bccosx -Ic:\code\hfiles

Vous pouvez aussi spécifier les options dans les fichiers de configuration (.CFG), qui sont décrits dans une section suivante, Fichier BCCOSX.CFG.

Vous pouvez utiliser BCCOSX.EXE pour envoyer les fichiers. BCCOSX.EXE peut aussi générer du code assembleur (voir l'option -S), mais nous ne fournissons pas un assembleur pour macOS.

Affichage de l'aide de la ligne de commande de BCCOSX.EXE pour obtenir des informations détaillées

Pour afficher l'aide de la ligne de commande de BCCOSX.EXE dans la fenêtre cmd, incluez l'option de ligne de commande -h.

bccosx -h

Affichage de l'aide pour des options spécifiques, des groupes tels que -Axxx et -Vxxx

Vous pouvez obtenir des informations plus spécifiques sur les options multi-lettres, telles que -Axxx (compatibilité du langage et conformité aux standards) et -Vxxx (compatibilité descendante).

Pour ce faire, utilisez l'option de ligne de commande -h avec la lettre initiale du groupe d'options (telle que -A pour spécifier les options -Axxx). BCC32.EXE affichera seulement les rubriques d'aide pour le jeu d'options spécifié (tel que -Axxx, -Vxxx ou -Wxxx).

Par exemple, pour afficher une description des options -Axxx (compatibilité du langage et conformité aux standards), utilisez les options de ligne de commande -h et -A :

C:\>bccosx -h -A


Chemins d'inclusion (-I, --sysinc)

BCCOSX.EXE résout les directives include en cherchant les fichiers spécifiés dans les chemins d'inclusion standard, suivis par les chemins d'inclusion distants.

Les chemins distants sont relatifs à $(SYSROOT).

$(SYSROOT) est un répertoire Windows qui représente la racine logique de la machine macOS. Dans cet emplacement sont copiés (mis en cache) les fichiers d'en-tête et les bibliothèques dynamiques nécessaires à la compilation et à la liaison (voir PAClient.exe).

Les chemins d'inclusion peuvent être contrôlés avec les options suivantes :

Option

Type du chemin d'inclusion

Description

-I

standard

Définit le chemin de recherche des fichiers d'inclusion standard.

--sysinc

distant

Définit le chemin de recherche des fichiers d'inclusion système (distants). $(SYSROOT) est placé devant le chemin spécifié.

Les chemins distants sont traités après les chemins standard.

BCCOSX.EXE suppose que les directives include de la forme #include </...> (crochets angulaires, chemins commençant par une barre oblique) se réfèrent à l'emplacement $(SYSROOT).

Les chemins d'inclusion les plus courants sont décrits dans le tableau suivant :

Type du chemin d'inclusion

Chemin

Description

standard

$(BDS)\include\osx\crtl

Ce répertoire contient les fichiers d'en-tête RTL C/C++ (.h) fournis par RAD Studio. Certains de ces fichiers incluent les fichiers d'en-tête C/C++ de $(SYSROOT)\usr\include. Pour de plus amples informations, voir RTL macOS C.

$(BDS)\include\osx\rtl

Ce répertoire contient les Delphi fichiers d'en-tête (.hpp) générés par la machine Delphi RTL.

distant

$(SYSROOT)\usr\include

Ce répertoire contient les fichiers d'en-tête macOS RTL C/C++ mis en cache sur Windows.

Pour définir les chemins d'inclusion depuis RAD Studio, voir Répertoires et Conditions du compilateur C++ (pour les chemins d'inclusion standard) et Gestionnaire de SDK (pour les chemins d'inclusion SDK).

Chemins de bibliothèques (-L, --syslib)

Option

Type du chemin d'inclusion

Description

-L

standard

Chemin de recherche des fichiers de bibliothèques.

--syslib

distant

Chemin de recherche des fichiers de bibliothèque relatif à $(SYSROOT).

Les chemins standard et les chemins distants des fichiers de bibliothèques sont traités dans l'ordre spécifié. Vous pouvez ainsi contrôler votre chemin de recherche des bibliothèques en entrelaçant les options -L et --syslib pour le compilateur.

Racine système (--sysroot)

SYSROOT est un répertoire de la machine Windows qui représente la racine logique de la machine distante/cible. Ce répertoire est l'endroit où les fichiers et/ou les informations symboliques de la machine distante/cible sont mis en cache. La valeur SYSROOT est utilisée par BCCOSX.EXE pour rechercher les fichiers d'inclusion et de bibliothèques.

Pour changer la valeur de SYSROOT, utilisez l'option --sysroot et spécifiez le répertoire du PC de développement où vous voulez que le cache local soit copié.

Pour définir le chemin SYSROOT depuis RAD Studio, voir Gestionnaire de SDK.

Options de la cible pour les applications multi-périphériques (--txxx)

BCCOSX.EXE prend en charge les options suivantes du compilateur pour la spécification de la cible d'une compilation (les options de ligne de commande -txxx) :

Pour afficher l'aide de la ligne de commande pour les options -txxx, entrez : > bccosx -h -t.

Option Description
  • -t

Spécifier l'exécutable cible

  • -tC
  • -tCD
  • -tCDR
  • -tCDV
  • -tCR
  • -tCV
  • La cible est une application console
  • La cible est une DLL console
  • La cible est une DLL console qui utilise la RTL dynamique
  • La cible est une DLL console qui utilise la VCL
  • La cible est une application console qui utilise la RTL dynamique
  • La cible est une application console qui utilise la VCL
  • -tD

La cible est une DLL (bibliothèque partagée) (.dylib sur macOS)

  • -tM sur Posix
    (ou -WM sur Windows)

La cible est une application multithread

  • -tP

La cible est un package

Certaines des options -t ne sont pas prises en charge par BCC32.EXE pour Windows 32 bits.

Fichier BCCOSX.CFG

Le fichier de configuration pour BCCOSX.EXE contient les paramètres suivants pour le compilateur croisé :

-I"C:\Program Files (x86)\Embarcadero\Studio\23.0\include\osx";"C:\Program Files (x86)\Embarcadero\Studio\23.0\include\osx\crtl";"C:\Program Files (x86)\Embarcadero\Studio\23.0\include\osx\rtl"
-I"C:\Program Files (x86)\Embarcadero\Studio\23.0\dinkumware"
-L"C:\Program Files (x86)\Embarcadero\Studio\23.0\lib\osx32\release"
--syslib=/usr/lib
--sysinc=/usr/include
-F/System/Library/Frameworks

Vous pouvez créer votre propre fichier BCCOSX.CFG et l'utiliser pour la compilation. Le fichier BCCOSX.CFG personnalisé doit être placé dans le répertoire en cours d'où BCCOSX.EXE est invoqué.

Voir aussi