Hello,

I am attempting to build Qpid Proton 0.35 using the source code package, using 
OpenSSL 1.1.1l and CyrusSASL 2.1.27. My goal is to repeat this exercise on RHEL 
7, RHEL 8, Ubuntu 18.04 and finally Ubuntu 20.04. All I really care about is 
yielding (i.e. installing) the header files and the C++ Qpid Proton libraries 
(and the C libraries if necessary).

I have attempted this so far (on RHEL 8):

$ [built OpenSSL and CyrusSASL]

$ tar xzf qpid-proton-0.35.0.tar.gz

$ cd qpid-proton-0.35.0 && make build && cd build

$ cmake .. -DCMAKE_INSTALL_PREFIX=$AMQP_PREFIX -DBUILD_PYTHON=OFF 
-DBUILD_RUBY=OFF -DOPENSSL_ROOT_DIR=$AMQP_PREFIX/ssl 
-DOPENSSL_CRYPTO_LIBRARY=$AMQP_PREFIX/ssl/lib/libcrypto.so 
-DOPENSSL_SSL_LIBRARY=$AMQP_PREFIX/ssl/lib/libssl.so 
-DOPENSSL_INCLUDE_DIR=$AMQP_PREFIX/ssl/include 
-DCyrusSASL_INCLUDE_DIR=$AMQP_PREFIX/sasl/include 
-DCyrusSASL_LIBRARY=$AMQP_PREFIX/sasl/lib/libsasl2.so -DBUILD_TESTING=OFF 
-DENABLE_FUZZ_TESTING=OFF -DBUILD_EXAMPLES=OFF
-- The C compiler identification is GNU 8.4.1
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Found OpenSSL: /home/myname/qpid-proton/amqp-1.0/ssl/lib/libcrypto.so (found 
version "1.1.1l")
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Failed
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE
-- Found SWIG: /usr/bin/swig (found version "3.0.12")
-- Found PkgConfig: /usr/bin/pkg-config (found version "1.4.2")
-- Found CyrusSASL: /home/myname/qpid-proton/amqp-1.0/sasl/lib/libsasl2.so 
(found version "2.1.27")
-- Found Python: /usr/bin/python3.8 (found suitable version "3.8.6", minimum 
required is "3.6") found components: Interpreter Development Development.Module 
Development.Embed
-- Runtime memory checker: valgrind memcheck
-- Looking for a CXX compiler
-- Looking for a CXX compiler - /usr/bin/c++
-- The CXX compiler identification is GNU 8.4.1
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Build type is "RelWithDebInfo" (has debug symbols)
-- PN_VERSION: 0.35.0 ()
-- Looking for clock_gettime
-- Looking for clock_gettime - found
-- Looking for strerror_r
-- Looking for strerror_r - found
-- Looking for epoll_wait
-- Looking for epoll_wait - found
-- Building the epoll proactor
-- Found Doxygen: /usr/bin/doxygen (found version "1.8.14") found components: 
doxygen dot
-- Found Ruby: /usr/bin/ruby (found suitable version "2.5.9", minimum required 
is "1.8.0")
-- Could NOT find JsonCpp (missing: JsonCpp_LIBRARY JsonCpp_INCLUDE_DIR)
-- Configuring done
-- Generating done
-- Build files have been written to: 
/home/myname/qpid-proton/build/qpid-proton-0.35.0/build

$ make qpid-proton-cpp     # For purpose of this email, I repeated this twice 
to yield the compressed output shown below
[  6%] Built target qpid-proton-proactor-objects
[  8%] Built target generated_c_files
[ 41%] Built target qpid-proton-core-objects
[ 41%] Built target qpid-proton-core
[ 42%] Built target qpid-proton-proactor
[100%] Built target qpid-proton-cpp

$ make install    # For purpose of this email, I repeated this twice to yield 
the compressed output shown below
[  5%] Built target qpid-proton-proactor-objects
[  6%] Built target generated_c_files
[ 31%] Built target qpid-proton-core-objects
[ 33%] Built target qpid-proton-platform-io-objects
[ 46%] Built target qpid-proton
[ 46%] Built target qpid-proton-core
[ 47%] Built target qpid-proton-proactor
[ 48%] Linking C executable msgr-send
//usr/lib64/libk5crypto.so.3: undefined reference to 
`EVP_KDF_derive@OPENSSL_1_1_1b'
//usr/lib64/libk5crypto.so.3: undefined reference to 
`EVP_KDF_ctrl@OPENSSL_1_1_1b'
//usr/lib64/libk5crypto.so.3: undefined reference to 
`EVP_KDF_CTX_new_id@OPENSSL_1_1_1b'
//usr/lib64/libk5crypto.so.3: undefined reference to 
`EVP_KDF_CTX_free@OPENSSL_1_1_1b'
collect2: error: ld returned 1 exit status
make[2]: *** [c/tools/CMakeFiles/msgr-send.dir/build.make:119: 
c/tools/msgr-send] Error 1
make[1]: *** [CMakeFiles/Makefile2:488: c/tools/CMakeFiles/msgr-send.dir/all] 
Error 2
make: *** [Makefile:149: all] Error 2


So, did I not configure Qpid Proton correctly using CMake? Why is the 'install' 
target insisting on building additional products I do not want?

David M. Whitney
Principal Software Systems Engineer
Emergent Space Technologies
NASA GSFC, Bldg. 23, Room N305-B
Greenbelt, MD 20771
Tel: 301-286-3176

  • Issue building Q... Whitney, David M. (GSFC-583.0)[EMERGENT SPACE TECH., INC]

Reply via email to