question

Upvotes
Accepted
9 1 1 5

Error building VAConsumer

make[3]: *** No rule to make target 'RTSDK-BinaryPack_rsslVACache_LIBRARY-NOTFOUND', needed by '../Cpp-C/Eta/Executables/OL8_64_GCC850/Optimized/VAConsumer'.  Stop.
make[2]: *** [CMakeFiles/Makefile2:4815: Cpp-C/Eta/Applications/Examples/VAConsumer/CMakeFiles/VAConsumer.dir/all] Error 2
make[1]: *** [CMakeFiles/Makefile2:4822: Cpp-C/Eta/Applications/Examples/VAConsumer/CMakeFiles/VAConsumer.dir/rule] Error 2
make: *** [Makefile:956: VAConsumer] Error 2

Hello! I want to build the VAConsumer (in Refinitiv Real-Time-SDK) example with CMake 3.20.2 (tried with 3.27.4 as well) on Red Hat Enterprise Linux 8.8 in a docker container. I get the following error message, I followed this tutorial: https://developers.refinitiv.com/en/api-catalog/refinitiv-real-time-opnsrc/rt-sdk-cc/quick-start


I tried the ideas at https://community.developers.refinitiv.com/questions/90426/building-vaconsumer.html but none of them helped.

My RTSDK version is Real-Time-SDK-2.1.1.L1.

Thank you for your help!


#technologyeta-apirefinitiv-realtime-sdkrefinitiv-real-time
icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Upvotes
Accepted
80.5k 261 52 75

@marton.brosig

I can build it properly by using the redhat/ubi8 as a base image.

[root@96ae0c2eb89a Optimized]# ls
350k.xml   ConsMod3  EncDecExample        NIProvMod1c  NIProvPerf  ProvMod2  Provider       VAProvider
ConsMod1a  ConsMod4  MsgData.xml          NIProvMod2   NIProvider  ProvMod3  Shared         WatchlistConsumer
ConsMod1b  ConsMod5  MultiCredWLConsumer  NIProvMod3   ProvMod1a   ProvMod4  TransportPerf  authlock
ConsMod1c  ConsPerf  NIProvMod1a          NIProvMod4   ProvMod1b   ProvMod5  VAConsumer
ConsMod2   Consumer  NIProvMod1b          NIProvMod5   ProvMod1c   ProvPerf  VANIProvider
[root@96ae0c2eb89a Optimized]# pwd
/opt/refinitiv/Real-Time-SDK/Cpp-C/Eta/Executables/RHEL8_64_GCC850/Optimized

I used the following steps.

1. yum -y install python3
2. yum -y install gcc-c++.x86_64 git.x86_64 redhat-lsb-core.x86_64 openssl-devel wget.x86_64
3. yum clean all
4. mkdir -p /opt/refinitiv
5. cd /opt/refinitiv
6. git config --global http.sslVerify false
7. git clone --recursive https://github.com/Refinitiv/Real-Time-SDK
8. wget https://cmake.org/files/v3.12/cmake-3.12.4-Linux-x86_64.tar.gz --no-check-certificate
9. wget https://download.gnome.org/sources/libxml2/2.10/libxml2-2.10.3.tar.xz --no-check-certificate
10. tar -xvf cmake-3.12.4-Linux-x86_64.tar.gz
11. cd Real-Time-SDK
12. mkdir rtsdk
13. export PATH=/opt/refinitiv/cmake-3.12.4-Linux-x86_64/bin:$PATH
14. cd rtsdk
15. mkdir -p external/dlcache
16. cp /opt/refinitiv/libxml2-2.10.3.tar.xz external/dlcache
17. cmake ../ -DBUILD_UNIT_TESTS=OFF
18. make 
icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

I think the problem is with my docker image, thank you for your solution a managed to build it in the image and than use it in my own.
Upvotes
80.5k 261 52 75

@marton.brosig

Thank you for reaching out to us.

The RTSDK-BinaryPack supports the following compilers.

1693887992915.pngYou are using OL8_64_GCC850. I think this is why it returns LIBRARY-NOTFOUND.

You can try this docker image which is based on oraclelinux:7.


1693887992915.png (5.9 KiB)
icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Thank you for you answer, the docker image you sent is working just fine. But i would like to make it work on RedHat 8.8. Is it possible somehow? I'm not that familiar with the above mentioned compilers.


Write an Answer

Hint: Notify or tag a user in this post by typing @username.

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.