Table of Contents |
---|
...
GCC C++ ABI is forward compatible from with version 3.4.
GCC 5.1 introduced Dual ABI to support C++11 requirements for
std::string
andstd::list
(macro_GLI
BCXX_USE_CXX11_ABI
specifies which one to use).Since GCC 5.1 C++11 ABI is compatible with GCC 5.x and above where C++ standard is 2011 and newer.
GCC 6.1 has full support for the C++14 standard, which was published in 2014. This mode is the default in GCC 6.1 and above; it can be explicitly selected with the
-std=c++14.
The previous naming schema was ambiguous because GCC 5 and later can be used to build binaries with C++98 ABI.
Since the release of 2.26.0 FIX Antenna binaries have following naming convention for Linux:
Binary | Old binary naming convention | C++ ABI | Target OS | Target Compiler |
---|---|---|---|---|
libV12_rh7.so | libV12-centos-7.5.1804-gcc48-MD-x64.so libV12-centos-7.5.1804-gcc49-MD-x64.so | C++ 98 | RHEL7/CentOS7 |
Note: GCC should be installed from RHEL/CentOS repository or developer toolset. Do not use GCC from dev toolset with new ABI, i.e. with parameter |
libV12_rh7_cxx11.so | libV12-centos-7.5.1804-gcc52-MD-x64.so | C++ 11 | RHEL7/CentOS7 | GCC 5.2 and higher with Note: GCC 5.2 and higher should be built and installed from sources because GCC from devtoolset uses only C++98 ABI. Use LD version 2.27 and higher with C++11 ABI to avoid linking problems. |
libV12_ubuntu1604_cxx11.so | libV12-ubuntu-16.04.5-lts-gcc61-MD-x64.so | C++ 11 | Ubuntu 16.04 | GCC 5.2 and higher with Note: GCC 5.2 and higher should be installed from the Ubuntu repository. Use LD version 2.27 and higher with C++11 ABI to avoid linking problems. |
...
Code Block | ||
---|---|---|
| ||
g++ -L../../../lib release_obj/FIXApp.o release_obj/Listener.o release_obj/SessionConnector.o \ -o Listener \ -lrt -lV12 |
How to build project with FIX Antenna using the Make utility
First, create a Makefile with the following content:
...