-1

Installing libssh for ssh call on C.
Ubuntu 13.04
apt-get install gcc --fine
apt-get install cmake -fine
wget openssl-1.0.1e.tar.gz --fine
tar -xzvf openssl-1.0.1e.tar.gz --fine
./config --prefix=/usr/local --openssldir=/usr/local/openssl --fine
make --fine
make test --fine
make install --fine
wget zlib-1.2.8.tar.gz --fine
./configure; make test --fine
make install --fine
apt-get install dev-essential
now to install libssh.org
cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Debug .. --fine
-- The C compiler identification is GNU 4.7.3
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Performing Test WITH_FPIC
-- Performing Test WITH_FPIC - Success
-- Performing Test WITH_STACK_PROTECTOR
-- Performing Test WITH_STACK_PROTECTOR - Success
-- Found ZLIB: /usr/local/include
-- Found PkgConfig: /usr/bin/pkg-config (found version "0.26")
-- checking for module 'openssl'
-- found openssl, version 1.0.1e
-- Found OpenSSL: /usr/local/lib/libssl.a;/usr/local/lib/libcrypto.a
-- Looking for include file pthread.h
-- Looking for include file pthread.h - found
-- Looking for pthread_create
-- Looking for pthread_create - not found
-- 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
-- checking for module 'heimdal-gssapi'
-- package 'heimdal-gssapi' not found
-- Could NOT find GSSAPI (missing: GSSAPI_LIBRARIES GSSAPI_INCLUDE_DIR)
-- Performing Test WITH_VISIBILITY_HIDDEN
-- Performing Test WITH_VISIBILITY_HIDDEN - Success
-- Looking for argp.h
-- Looking for argp.h - found
-- Looking for pty.h
-- Looking for pty.h - found
-- Looking for termios.h
-- Looking for termios.h - found
-- Looking for unistd.h
-- Looking for unistd.h - found
-- Looking for openssl/aes.h
-- Looking for openssl/aes.h - found
-- Looking for openssl/blowfish.h
-- Looking for openssl/blowfish.h - found
-- Looking for openssl/des.h
-- Looking for openssl/des.h - found
-- Looking for openssl/ecdh.h
-- Looking for openssl/ecdh.h - found
-- Looking for openssl/ec.h
-- Looking for openssl/ec.h - found
-- Looking for openssl/ecdsa.h
-- Looking for openssl/ecdsa.h - found
-- Looking for strncpy
-- Looking for strncpy - found
-- Looking for vsnprintf
-- Looking for vsnprintf - found
-- Looking for snprintf
-- Looking for snprintf - found
-- Looking for poll
-- Looking for poll - found
-- Looking for select
-- Looking for select - found
-- Looking for getaddrinfo
-- Looking for getaddrinfo - found
-- Looking for ntohll
-- Looking for ntohll - not found
-- Looking for htonll
-- Looking for htonll - not found
-- Looking for clock_gettime in rt
-- Looking for clock_gettime in rt - found
-- Looking for forkpty in util
-- Looking for forkpty in util - found
-- Looking for cfmakeraw
-- Looking for cfmakeraw - found
-- Looking for strtoull
-- Looking for strtoull - found
-- Looking for __strtoull
-- Looking for __strtoull - not found
-- Performing Test HAVE_GCC_THREAD_LOCAL_STORAGE
-- Performing Test HAVE_GCC_THREAD_LOCAL_STORAGE - Success
-- Performing Test HAVE_MSC_THREAD_LOCAL_STORAGE
-- Performing Test HAVE_MSC_THREAD_LOCAL_STORAGE - Failed
-- Performing Test HAVE_GCC_VOLATILE_MEMORY_PROTECTION
-- Performing Test HAVE_GCC_VOLATILE_MEMORY_PROTECTION - Success
-- Check if the system is big endian
-- Searching 16 bit integer
-- Looking for sys/types.h
-- Looking for sys/types.h - found
-- Looking for stdint.h
-- Looking for stdint.h - found
-- Looking for stddef.h
-- Looking for stddef.h - found
-- Check size of unsigned short
-- Check size of unsigned short - done
-- Using unsigned short
-- Check if the system is big endian - little endian
-- Could NOT find Doxygen (missing: DOXYGEN_EXECUTABLE)
-- The CXX compiler identification is GNU 4.7.3
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- ********************************************
-- ********** libssh build options : **********
-- zlib support: ON
-- libgcrypt support: OFF
-- SSH-1 support: OFF
-- SFTP support: ON
-- Server support : ON
-- GSSAPI support : 0
-- Pcap debugging support : ON
-- With static library: OFF
-- Unit testing: OFF
-- Client code Unit testing: OFF
-- Public API documentation generation
-- Benchmarks: OFF
-- ********************************************
-- Configuring done
-- Generating done
-- Build files have been written to: /root/libssh/libssh-0.6.0rc1/build
****Now when i tryin to run
make or make install****
Scanning dependencies of target ssh_shared
[ 1%] Building C object src/CMakeFiles/ssh_shared.dir/agent.c.o
[ 2%] Building C object src/CMakeFiles/ssh_shared.dir/auth.c.o
[ 4%] Building C object src/CMakeFiles/ssh_shared.dir/base64.c.o
[ 5%] Building C object src/CMakeFiles/ssh_shared.dir/buffer.c.o
[ 6%] Building C object src/CMakeFiles/ssh_shared.dir/callbacks.c.o
[ 8%] Building C object src/CMakeFiles/ssh_shared.dir/channels.c.o
[ 9%] Building C object src/CMakeFiles/ssh_shared.dir/client.c.o
[ 10%] Building C object src/CMakeFiles/ssh_shared.dir/config.c.o
[ 12%] Building C object src/CMakeFiles/ssh_shared.dir/connect.c.o
[ 13%] Building C object src/CMakeFiles/ssh_shared.dir/dh.c.o
[ 14%] Building C object src/CMakeFiles/ssh_shared.dir/ecdh.c.o
[ 16%] Building C object src/CMakeFiles/ssh_shared.dir/error.c.o
[ 17%] Building C object src/CMakeFiles/ssh_shared.dir/getpass.c.o
[ 18%] Building C object src/CMakeFiles/ssh_shared.dir/init.c.o
[ 20%] Building C object src/CMakeFiles/ssh_shared.dir/kex.c.o
[ 21%] Building C object src/CMakeFiles/ssh_shared.dir/known_hosts.c.o
[ 22%] Building C object src/CMakeFiles/ssh_shared.dir/legacy.c.o
[ 24%] Building C object src/CMakeFiles/ssh_shared.dir/libcrypto.c.o
[ 25%] Building C object src/CMakeFiles/ssh_shared.dir/log.c.o
[ 26%] Building C object src/CMakeFiles/ssh_shared.dir/match.c.o
[ 28%] Building C object src/CMakeFiles/ssh_shared.dir/messages.c.o
[ 29%] Building C object src/CMakeFiles/ssh_shared.dir/misc.c.o
[ 30%] Building C object src/CMakeFiles/ssh_shared.dir/options.c.o
[ 32%] Building C object src/CMakeFiles/ssh_shared.dir/packet.c.o
[ 33%] Building C object src/CMakeFiles/ssh_shared.dir/packet_cb.c.o
[ 34%] Building C object src/CMakeFiles/ssh_shared.dir/packet_crypt.c.o
[ 36%] Building C object src/CMakeFiles/ssh_shared.dir/pcap.c.o
[ 37%] Building C object src/CMakeFiles/ssh_shared.dir/pki.c.o
[ 38%] Building C object src/CMakeFiles/ssh_shared.dir/poll.c.o
[ 40%] Building C object src/CMakeFiles/ssh_shared.dir/session.c.o
[ 41%] Building C object src/CMakeFiles/ssh_shared.dir/scp.c.o
[ 42%] Building C object src/CMakeFiles/ssh_shared.dir/socket.c.o
[ 44%] Building C object src/CMakeFiles/ssh_shared.dir/string.c.o
[ 45%] Building C object src/CMakeFiles/ssh_shared.dir/threads.c.o
[ 46%] Building C object src/CMakeFiles/ssh_shared.dir/wrapper.c.o
[ 48%] Building C object src/CMakeFiles/ssh_shared.dir/pki_crypto.c.o
[ 49%] Building C object src/CMakeFiles/ssh_shared.dir/sftp.c.o
[ 50%] Building C object src/CMakeFiles/ssh_shared.dir/sftpserver.c.o
[ 52%] Building C object src/CMakeFiles/ssh_shared.dir/server.c.o
[ 53%] Building C object src/CMakeFiles/ssh_shared.dir/bind.c.o
[ 54%] Building C object src/CMakeFiles/ssh_shared.dir/gzip.c.o
Linking C shared library libssh.so
[ 54%] Built target ssh_shared
Scanning dependencies of target ssh_threads_shared
[ 56%] Building C object src/threads/CMakeFiles/ssh_threads_shared.dir/pthread.c.o
Linking C shared library libssh_threads.so
[ 56%] Built target ssh_threads_shared
Scanning dependencies of target exec
[ 57%] Building C object examples/CMakeFiles/exec.dir/exec.c.o
[ 58%] Building C object examples/CMakeFiles/exec.dir/authentication.c.o
[ 60%] Building C object examples/CMakeFiles/exec.dir/knownhosts.c.o
[ 61%] Building C object examples/CMakeFiles/exec.dir/connect_ssh.c.o
Linking C executable exec
**../src/libssh.so.4.3.0: undefined reference to `dlopen'
../src/libssh.so.4.3.0: undefined reference to `dlclose'`
../src/libssh.so.4.3.0: undefined reference to `dlerror'
../src/libssh.so.4.3.0: undefined reference to `dlsym'
../src/libssh.so.4.3.0: undefined reference to `dladdr'**

1 Answers1

0

libssh does not use dlopen at all. It is either openssl or another library which needs dlopen and is not linked correctly.

You’re linking against the static libraries of openssl it is probably openssl which needs libdl.

asn
  • 798
  • 9
  • 17