question

Upvotes
Accepted
11 8 7 14

ElektronSDK 1.0.6 for linux looks like it's missing symbolic links for ETA shared libraries

elektronrefinitiv-realtimeelektron-sdkrrteta-apielektron-transport-apilinux
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
361 1 4 3

Joe,

You may have needed to run the "LinuxSoLink" script included with the binary pack. It creates the symlinks you describe.

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
11 8 7 14

After installing the ElektronSDK version 1.0.6 on linux and linking an executable using the shared libraries, the resulting image cannot find the referenced .so files.
The missing .so files are NOT due to an improperly set LD_LIBRARY_PATH nor a missing R[UN]PATH set in the executable.

The problem is due to the .so files having been created with -Wl,soname

The link line uses the names of the files located in the
/Elektron-SDK1.0.6.linux/Eta/Libs/RHEL6_64_GCC444/Optimized/Shared
directory

Linking with the parameters:
-llibrssl-eta3.0.2.L1
-llibrsslVA-eta3.0.2.L1
-llibrsslVACache-eta3.0.2.L1

Results in the successful completion of the link and the resolution of all the symbols.

attempting to run the resulting image howver references .so files NOT specified in the link:
librssl.so.6, librsslVA.so.7, and librsslVACache.so.2

This is because the .so files were created with a parameter to the linker that instructed it to override the filename of the .so and use an internally stored name (SONAME) in the executable produced by the linker.

To correct the problem, symbolic links need to be generated for the SONAME to the file name on the disk e.g.

ln -s librssl-eta3.0.2.L1.so librssl.so.6

Further, a version independent name should be generated to that the link line is not tied to a particular executable version:

ln -s librssl.so.6 librssl.so

This would allow linking with simply:

-llibrssl -llibrsslVA -llibrsslVACache

It's possible that these links were created when the version was built but the craetion of the archive for distribution excluded files that were symbolic links

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
11 8 7 14

I found the file: Eta/LinuxSoLink
You may want to add a line to the README that the script needs to be run

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.