With the addition of the 64-bit C++11 compiler in C++Builder XE3 update 1 (and RAD Studio XE3 update 1), there are a host of new 64-bit tools to go along with the compiler. Here is a list (with links to the Embarcadero DocWiki articles) of the new 64-bit tools that are part of the 64-bit Windows application development set.
- bcc64.exe - the C++11 64-bit command line compiler - http://docwiki.embarcadero.com/RADStudio/XE3/en/BCC64.EXE,_the_C%2B%2B_64-bit_Windows_Compiler
- Ilink64.exe - the 64-bit incremental linker - http://docwiki.embarcadero.com/RADStudio/XE3/en/ILINK64.EXE,_the_64-bit_Incremental_Linker
- cpp64.exe - the pre-processor for 64-bit Windows - http://docwiki.embarcadero.com/RADStudio/XE3/en/CPP64,_the_Preprocessor_for_64-bit_Windows
- tlibimp.exe - the type library importer (works for 32 and 64 bit Windows) - http://docwiki.embarcadero.com/RADStudio/XE3/en/TLIBIMP.EXE
- tlib64.exe - the library manager for 64-bit Windows - http://docwiki.embarcadero.com/RADStudio/XE3/en/TLIB64.EXE,_the_Library_Manager_for_64-bit_Windows
- tdump64.exe - the file dump utility for 64-bit Windows - http://docwiki.embarcadero.com/RADStudio/XE3/en/TDUMP64.EXE,_the_File_Dumping_Utility_for_64-bit_Windows
- mkexp.exe - the 64-bit Windows Import Library Tool for C++ - http://docwiki.embarcadero.com/RADStudio/XE3/en/MKEXP.EXE,_the_64-bit_Windows_Import_Library_Tool_for_C%2B%2B
There are also some existing tools that now support 64-bit Windows including:
- GenTLB.exe - Type library generator - http://docwiki.embarcadero.com/RADStudio/XE3/en/GenTLB.exe
Some additional notes about the 64-bit tools
- bcc64.exe -Calling convention: MS x64 ABI, Name mangling: Intel Itanium C++ 64-bit ABI (with some extensions), Compiled object file: ELF64 format, Executable file: PE+/PE32+, Debug info format: DWARF format.
- ilink64.exe - command syntax and usage for ILINK64 are the same as those of ILINK32.EXE, the 32-bit Incremental Linker. ILINK32 links .obj and .lib files into a 32-bit Windows executable or .dll. ILLINK64 links .o and .a files into a 64-bit Windows executable or .dll.
- cpp64.exe - supports the same preprocessor directives supported by CPP32. Running CPP64.EXE is equivalent to running BCC64.EXE with the -E option ("Only run the preprocessor"). CPP64.EXE produces a file that lists a C or C++ program, in which all #include files and #define macros have been expanded. When a compiler reports an error inside a macro or an include file, you can get more information about the error if you can see the include files or the results of the macro expansions. In many multipass compilers, the results of the preprocessing phase are preserved and can be examined. Because both BCC32 and BCC64 compilers are single-pass compilers, you need to use CPP64 if you want to obtain the preprocessing output.
- tlibimp.exe - TLIBIMP exists both as a 32-bit Windows utility and as a 64-bit Windows utility. The 64-bit Windows version of TLIBIMP is installed on 64-bit Windows systems, in addition to the 32-bit Windows version. The platform-dependent versions of TLIBIMP are installed in the following locations: a) 32-bit windows - $(BDS)\bin\tlibimp.exe, b) 64-bit Windows - $(BDS)\bin64\tlibimp.exe
- tlib64.exe - The object files are ELF format with a .o extension. The libraries are in GNU ar format with a .a extension. TLIB64 also can manage OMF files, just like TLIB.EXE, its 32-bit Windows counterpart. To enable ELF format libraries with TLIB64, you must specify the /A option on the command line.
- tdump64.exe - The main differences between TDUMP and TDUMP64 are the acceptable input files. TDUMP can dump the following 32-bit file types: .obj, .exe, .lib. TDUMP64 can dump the following 64-bit file types: .o, .exe, .a (library). The .o and .a files are 64-bit ELF-format object and library files that are produced by BCC64. The .exe file is a 64-bit Windows executable file. If TDUMP64 does not recognize an extension, it produces a hexadecimal dump of the file. TDUMP64’s ability to peek at a file’s inner structure displays not only a file’s contents, but also how a file is constructed and verifies that a file’s structure matches its extension.
- mkexp.exe - the 64-bit Windows counterpart of IMPLIB.EXE. MKEXP produces GNU-style (ELF format) archive files (.a files). You can use .DLL, .DEF, or OMF files with MKEXP.
Watch/Download the C++Builder 64-bit Compiler Preview Video
Additional details about the 64-bit C++Builder compiler are available in the preview video. Watch the C++ 64-bit compiler preview video on YouTube at http://www.youtube.com/watch?v=PwwMpBUoR6Y. You can also download the MP4 video file at http://cc.embarcadero.com/item/29197. The preview video is 9 minutes long.
Try the C++Builder 64-bit compiler
The C++Builder XE3 and RAD Studio XE3 free trial downloads have been updated to include the new C++Builder 64-bit compiler. Trial downloads are available at https://downloads.embarcadero.com/free/c_builder
During the first 25 days of December leading up to Christmas, I will blog about the release of the C++Builder 64-bit compiler for Microsoft Windows and C++Builder XE3 support for building VCL and FireMonkey 2 applications.