Compiling ObjectARX® Application Against FRX SDK
Compiling your FRX application with ARES Commander
Requirements
ARES Stream | Visual Studio Version | Platform Toolset | FxARX SDK |
2024.x.x |
| v142 | 2024.x.x |
2025.x.x |
| v143 | 2025.x.x |
Follow the next steps to compile your projects against the current ARES Commander Service Pack and also previous versions of the current year:
Step 1 : Create FRX configurations for your project
Open your ARX project with Visual Studio.
Go to the Configuration Manager and create new configuration based on your ObjectARX configuration (release and debug).
Note: Make sure that the ObjectARX props files are not copied in the new configuration.Open the vcxproj file in an editor and search for props files.
Remove ARX props files that are imported in the FRX configurations and save the file.
Step 2 : Modify FRX Configuration Properties
Open your project with Visual Studio.
Open project properties.
Change Configuration to the FRX configuration.
In Configuration Properties > Advanced :
Set Character Set to Use Unicode Character SetThe resulting Target File Extension should be .frx.
Apply the changes.
Note : From ARES Commander 2025 onwards Visual Studio 2022 must be used.
Step 3 : Link the headers from FRX
In C/C++ > General : Additional Include Directories remove all the headers related to ObjectARX.
Add headers from FRX:
version_x64_ARES_SDK\SDK_x64\Headers\frx_inc\FxARX2025SPX\include
version_x64_ARES_SDK\SDK_x64\Headers\frx_inc\FxARX2025SPX\_impl_include
Apply the changes.
Step 4 : Link the Libraries from FRX
In Linker > General : Additional Library Directories remove all *.lib files related to ObjectARX.
Add *.lib files from FRX:
version_x64_ARES_SDK\SDK_x64\Libraries\frx_libIn Linker > Input : Additional Dependencies connect to the *.lib file from FRX: FxARX2025_X0.lib.
Note: Please connect to the appropriate *.lib file corresponding to the release you are using.In Linker > Input : Module Definition File remove the *.def file related to ObjectARX.
Example :
Remove..\..\..\inc\AcRxDefault.def
Apply the changes.
Step 5 : Add in the project resource file the API version that it is used to compile your projects
We recommend to define in your project resource file (.RC), the "FRX-API-VERSION"
with the API version against you compile your project. This way your plugin will keep compatibility across different Service Packs from same year. The following table shows the relation between released service packs and the version value that must be used to set "FRX-API-VERSION"
Service Pack | Value |
---|---|
ARES Commander 20XX SP0 | 20XX_00 |
ARES Commander 20XX SP1 | 20XX_10 |
ARES Commander 20XX SP2 | 20XX_20 |
ARES Commander 20XX SP3 | 20XX_30 |
You just need to define in the StringFileInfo
block of the resource file, the value FRX-API-VERSION. For example, if you compile your sources against FxARX API 2025 SP0 then you will add something like:
VALUE "FRX-API-VERSION", "2025_00"
For more information about this topic, please read https://graebert.atlassian.net/wiki/spaces/ACPD/pages/1758887956
In case you configure your projects using a PROPS file, FxARX package contains FxARX.props with the default configuration to link against the FxARX SDK.
FxARX is only provided as 64-bits module. Make sure you build your project in x64.
Please, notify Graebert GmbH about the inheritance of the custom entities that your are implementing.
The resulting FRX file is not compatible with any other application. You can use the plugin only in ARES Commander environment.
Additional Resources: