libema missing and binary pack and cannot be build with gcc 10.2 centOs 7.4

Hi.
I trying to build the RTSDK from github master branch
neither
cmake -S <my_prefix>/Real-Time-SDK -B <my_prefix>/Real-Time-SDK/rtsdk.build -DCMAKE_BUILD_TYPE=Debug
nor
cmake -S <my_prefix>/Real-Time-SDK -B <my_prefix>/Real-Time-SDK/rtsdk.build -DCMAKE_BUILD_TYPE=Debug -DRTSDK_OPT_BUILD_ETA_EMA_LIBRARIES=ON -DBUILD_EMA_LIBRARY=ON
gives me ema library build
I see only ETA in RTSDK-BinaryPack/Cpp-C
The binary pack from github (https://github.com/Refinitiv/Real-Time-SDK/releases/download/Real-Time-SDK-2.0.4.L1/RTSDK-BinaryPack-2.0.4.L1.zip) contains only ETA too.
In cmake output I see
CMake Warning:
Manually-specified variables were not used by the project:
RTSDK_OPT_BUILD_ETA_EMA_LIBRARIES
Could you assist with that?
With best regards,
Dmitry Rusakov.
Best Answer
-
I can build the EMA library properly on Centos 7 and GCC 10.2. I used a docker container.
[root@ce8125f7d5c7 rtsdk]# gcc --version
gcc (GCC) 10.2.1 20201016 (Red Hat 10.2.1-7)
Copyright (C) 2020 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
[root@ce8125f7d5c7 rtsdk]# g++ --version
g++ (GCC) 10.2.1 20201016 (Red Hat 10.2.1-7)
Copyright (C) 2020 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
[root@ce8125f7d5c7 rtsdk]# lsb_release -a
LSB Version: :core-4.1-amd64:core-4.1-noarch
Distributor ID: CentOS
Description: CentOS Linux release 7.9.2009 (Core)
Release: 7.9.2009
Codename: Core
[root@ce8125f7d5c7 rtsdk]# cmake --version
cmake version 3.14.1
CMake suite maintained and supported by Kitware (kitware.com/cmake).The cmake command is:
cmake ../ -DBUILD_UNIT_TESTS=OFF -DBUILD_ETA_APPLICATIONS=OFF -DCMAKE_BUILD_TYPE=Debug
Then run the make command to build the libraries.
The EMA library is in the Cpp-C/Ema/Libs/CENTOS7_64_GCC1021/Debug directory.
[root@ce8125f7d5c7 Debug]# pwd
/opt/refinitiv/Real-Time-SDK/Cpp-C/Ema/Libs/CENTOS7_64_GCC1021/Debug
[root@ce8125f7d5c7 Debug]# ls -al
total 91632
drwxr-xr-x 3 root root 4096 Feb 7 05:51 .
drwxr-xr-x 3 root root 4096 Feb 7 05:49 ..
drwxr-xr-x 2 root root 4096 Feb 7 05:52 Shared
-rw-r--r-- 1 root root 93818786 Feb 7 05:51 libema.a0
Answers
-
Have you tried the build instructions at https://github.com/Refinitiv/Real-Time-SDK/tree/master/Cpp-C
OR in
Real-Time-SDK/RTSDK_C_Installation_Guide.pdf at master · Refinitiv/Real-Time-SDK (github.com)
There is also an article that you may find useful - Using CMake and CMake GUI with Refinitiv Real-time SDK C++ | Refinitiv Developers
I should also add that on my WSL Linux build I see the libema.a file in /home/umer/Real-Time-SDK/Cpp-C/Ema/Libs/LIN5_64_GCC1121/Optimized
0 -
Hi @umer.nalla
I followed to instructions by these links, but still do not have libema. I am to mention that I am working with sources from github. In attachments out files of call below out.txt ut2.txt
cmake -H. -Brtsdk.gcc102 -DCMAKE_BUILD_TYPE=Debug
cmake -H. -Brtsdk.gcc102 -DCMAKE_BUILD_TYPE=Debug -DBUILD_RTSDK-BINARYPACK:BOOL=ON
0 -
Hello @dmitry.rusakov ,
I believe that this is as expected.
Only ETA libraries are part of BinaryPack CPP-C. EMA libraries are found in Real-Time-SDK/Cpp-C/Ema/Libs directory.
If you have not seen any errors during build, when you will move to the next step, testing with the starter consumer example, you should encounter no libraries missing.
Hope this helps
0 -
As my colleague pointed out, the libema file should be built once you try to make something that depends on it i.e. an EMA example
make Cons100
I should also point out that we don't support GCC 10.2 just yet. Our qualification on CentOS 7.X was done using OL7 libs built using GCC 4.8.2. Also, to do the qualification you have to build on OL7 or use our RRG package which has OL7 libs in it.
0 -
@umer.nalla @zoya faberov @Jirapongse Thanks a lot. It works.
0
Categories
- All Categories
- 3 Polls
- 6 AHS
- 37 Alpha
- 166 App Studio
- 6 Block Chain
- 4 Bot Platform
- 18 Connected Risk APIs
- 47 Data Fusion
- 34 Data Model Discovery
- 698 Datastream
- 1.5K DSS
- 633 Eikon COM
- 5.2K Eikon Data APIs
- 14 Electronic Trading
- 1 Generic FIX
- 7 Local Bank Node API
- 6 Trading API
- 2.9K Elektron
- 1.5K EMA
- 257 ETA
- 565 WebSocket API
- 40 FX Venues
- 16 FX Market Data
- 1 FX Post Trade
- 1 FX Trading - Matching
- 12 FX Trading – RFQ Maker
- 5 Intelligent Tagging
- 2 Legal One
- 25 Messenger Bot
- 3 Messenger Side by Side
- 9 ONESOURCE
- 7 Indirect Tax
- 60 Open Calais
- 283 Open PermID
- 47 Entity Search
- 2 Org ID
- 1 PAM
- PAM - Logging
- 6 Product Insight
- Project Tracking
- ProView
- ProView Internal
- 24 RDMS
- 2.1K Refinitiv Data Platform
- 800 Refinitiv Data Platform Libraries
- 4 LSEG Due Diligence
- LSEG Due Diligence Portal API
- 4 Refinitiv Due Dilligence Centre
- Rose's Space
- 1.2K Screening
- 18 Qual-ID API
- 13 Screening Deployed
- 23 Screening Online
- 12 World-Check Customer Risk Screener
- 1K World-Check One
- 46 World-Check One Zero Footprint
- 45 Side by Side Integration API
- 2 Test Space
- 3 Thomson One Smart
- 10 TR Knowledge Graph
- 151 Transactions
- 143 REDI API
- 1.8K TREP APIs
- 4 CAT
- 27 DACS Station
- 122 Open DACS
- 1.1K RFA
- 107 UPA
- 194 TREP Infrastructure
- 232 TRKD
- 918 TRTH
- 5 Velocity Analytics
- 9 Wealth Management Web Services
- 101 Workspace SDK
- 11 Element Framework
- 5 Grid
- 19 World-Check Data File
- 1 Yield Book Analytics
- 48 中文论坛