Linking errors openSSL Eval Version on openSUSE

Questions regarding the use of the ANSI C SDK for Server or Client development or integration into customer products ...

Moderator: uasdkc

Post Reply
hroepken
Jr. Member
Jr. Member
Posts: 1
Joined: 07 Sep 2016, 12:49

Linking errors openSSL Eval Version on openSUSE

Post by hroepken »

Hello,

i want to evaluate the Linux version of your ANSI C based SDK using openSUSE13.2 as OS.
Starting with lesson1 i get linking errors for openssl. (Seems to be similar like in Post "Linking Problem on Centos 7"
by smagnoni » 05 Feb 2016, 10:42 in the C++ Forum)

Code: Select all

roepken@erpel:~/bin/opcua/unifiedautomation/sdk> buildExamples-lesson1.sh 
No config was set - setting up the config to default build CONFIGURATIONS=Debug Release
Setting up default to static libraries BUILD_SHARED_LIBS=OFF
Setting up default default build ('make -j1').
-- The C compiler identification is GNU 4.8.3
-- Check for working C compiler: /usr/bin/gcc
-- Check for working C compiler: /usr/bin/gcc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Found OpenSSL: /usr/lib64/libssl.so;/usr/lib64/libcrypto.so (found version "1.0.1k") 
-- Detected GCC variant: 4.8

-- 
-- ######################### Creating Makefile of server_lesson01 #####################################
-- Configuring done
-- Generating done
-- Build files have been written to: /home/roepken/bin/opcua/unifiedautomation/sdk/buildExamplesDebug/server_gettingstarted/lesson01
Scanning dependencies of target server_lesson01
[100%] Building C object CMakeFiles/server_lesson01.dir/servermain.c.o
Linking C executable server_lesson01d
/home/roepken/bin/opcua/unifiedautomation/sdk/lib/libuastackd.so: undefined reference to `RSA_size@libcrypto.so.10'
/home/roepken/bin/opcua/unifiedautomation/sdk/lib/libuastackd.so: undefined reference to `RAND_status@libcrypto.so.10'
/home/roepken/bin/opcua/unifiedautomation/sdk/lib/libuastackd.so: undefined reference to `ASN1_INTEGER_set@libcrypto.so.10'
...
/home/roepken/bin/opcua/unifiedautomation/sdk/lib/libuastackd.so: undefined reference to `ERR_load_crypto_strings@libcrypto.so.10'
/home/roepken/bin/opcua/unifiedautomation/sdk/lib/libuastackd.so: undefined reference to `RSA_private_decrypt@libcrypto.so.10'
/home/roepken/bin/opcua/unifiedautomation/sdk/lib/libuastackd.so: undefined reference to `EVP_aes_256_cbc@libcrypto.so.10'
collect2: error: ld returned 1 exit status
CMakeFiles/server_lesson01.dir/build.make:86: recipe for target 'server_lesson01d' failed
make[2]: *** [server_lesson01d] Error 1
CMakeFiles/Makefile2:60: recipe for target 'CMakeFiles/server_lesson01.dir/all' failed
make[1]: *** [CMakeFiles/server_lesson01.dir/all] Error 2
Makefile:117: recipe for target 'all' failed
make: *** [all] Error 2
make failed.

openSSL is from the distro repo.

Thanks for your answer.
Best regards
Holger

User avatar
Support Team
Hero Member
Hero Member
Posts: 3064
Joined: 18 Mar 2011, 15:09

Re: Linking errors openSSL Eval Version on openSUSE

Post by Support Team »

Hello Holger,

as stated in our response to "Linking problem on CentOS7" in the C++ forum, our Linux evaluation versions are specifically made for 64bit CentOS 7 and Debian 7. Due to differences in symbol naming and versioning they are not guaranteed to run on other Linux distributions. For evaluation you might want to set up a virtual machine (e.g. using VirtualBox) with one of those two distributions.

If you decide to buy the SDK, you will get the sources and can compile it using your desired distribution, this will eliminate any of the described issues.

Best regards
Unified Automation Support Team
Best regards
Unified Automation Support Team

Post Reply