Output - C/C++

From Appmethod Topics
Jump to: navigation, search

Go Up to Object Pascal Compiler


Project > Options > Object Pascal Compiler > Output - C/C++

Allows you to specify the C/C++ output from the Object Pascal compiler (exactly what the Object Pascal compiler is to output and the directory for the output).

By default, the Object Pascal compiler generates all Appmethod C++ files (not just the .dcu files), including the required Object Pascal files. The only other option that generates the necessary Object Pascal portions is Generate DCUs. Use the C/C++ Output file generation option to specify the files you want to output.

Options Description

Target, Apply, Save

See Target Options.

Common items

See Common Items on Project Options Pages.


Output Option Description Compiler switches All platforms supported unless noted

C/C++ .bpi output directory (package import libraries)

Specifies the output directory for the package import libraries (.bpi) for use in C++ projects. Click the ellipsis [...] to open a Browse for Folder dialog box.

‑NB

  • 32‑bit Windows
  • 64‑bit Windows
  • Mac OS X
  • iOS Simulator

C/C++ .hpp output directory

Specifies the output directory for the C++ header files (.hpp).

‑NH

C/C++ .obj/.lib output directory

Specifies the output directory for the C++ object (.obj, .o) and static library (.lib, .a) files.

‑NO

C/C++ Output file generation

Specifies the files that are to be output by the Object Pascal compiler.

Note: For Object Pascal packages, only two choices are offered:
  • Generate DCUs (appropriate when you do not plan to use the package from C++)
  • Generate all Appmethod C++ files (including package libs)

Click the down-arrow to display the choices:

  • 32‑bit Windows
  • 64‑bit Windows
  • Mac OS X
  • iOS Simulator

Generate DCUs only

Generates the package and associated .dcu and .dcp files.

Generate C .objs

Creates a C object file for linking with a C program (no name mangling).

‑J

Generate C++ .objs

Creates a C++ object file for linking with C++ (uses C++ name mangling).

‑JP

Generate C++ .objs, headers

Generates a header file (.hpp) and an object file (.obj)

‑JPH

Generate C++ .objs, headers, namespaces

Includes C++ namespace information in the .obj and .hpp files generated.

‑JPHN

Generate C++ .objs, headers, namespaces, export

Includes all symbol information in the .obj and .hpp files generated.

‑JPHNE

Generate C++ .objs, namespaces

Includes C++ namespace information in the .obj files generated. This is the default for mixed Object Pascal and C++ projects.

‑JPN

Generate C++ .objs, namespaces, export

Includes C++ namespace and symbol information in the .obj files generated.

‑JPNE

Generate C++ .objs, headers, exports

Includes symbol information in the generated object (.obj) and header (.hpp) files.

‑JPHE

Generate C++ .objs, exports

Includes symbol information in the generated object (.obj) files.

‑JPE

Generate all Appmethod C++ files (including package libs) *

Generates the package and all Object Pascal pieces, along with all necessary header files (.hpp), package import library file (.bpi), and package static library file (.lib, .a) for C++ projects. This is the default in desktop platforms.

‑JL

Generate .hpp file.

Generates a header file (.hpp). It is set to True by default.

  • iOS Device
    (32-bit and 64-bit)

See Also