3

I'm coming from Python and new to C++ and am trying to test a program which retrieves data via websockets.

I copied this github repository with

  git clone https://github.com/tensaix2j/binacpp

I'm trying to run the example so I filled in the api key and secret in:

 /binacpp/example/example.cpp

Now from /binacpp/example folder I'm trying

make example

and I'm getting this error:

Making example


g++ -I../lib/libcurl-7.56.0/include -I../lib/jsoncpp-1.8.3/include -I../lib/libwebsockets-2.4.0/include -I../lib/libbinacpp/include \
example.cpp \
-L../lib/libcurl-7.56.0/lib \
-L../lib/libwebsockets-2.4.0/lib \
-L../lib/libbinacpp/lib \
-lcurl -ljsoncpp  -lcrypto -lwebsockets -lbinacpp -o example
In file included from ../lib/libbinacpp/include/binacpp_websocket.h:16:0,
                 from example.cpp:8:
../lib/libwebsockets-2.4.0/include/libwebsockets.h:214:10: fatal error: openssl/ssl.h: No such file or directory
 #include <openssl/ssl.h>
          ^~~~~~~~~~~~~~~
compilation terminated.
Makefile:25: recipe for target 'example' failed
make: *** [example] Error 1

user@ip:/opt/binacpp/example$ ^C
user@ip:/opt/binacpp/example$ ./example.run.sh
./example: error while loading shared libraries: librtmp.so.0: cannot open shared object file: No such file or directory

I'm trying to figure out why I'm getting this error and what to do with it?

1) It says on the readme that the dependencies are

  jsoncpp-1.8.3
  libcurl-7.56.0
  libwebsockets-2.4.0

However these are included in the repository

2) if maybe it is assumed that openssl normally is already installed, how do I know which version to install? And how do I install this, because with Python you can just use pip and everything will be placed in the correct directories for including it in your program.

Christian Hackl
  • 27,051
  • 3
  • 32
  • 62
user3605780
  • 6,542
  • 13
  • 42
  • 67
  • 3
    The error is because you don't have the openssl headers installed. I'd be very surprised if you don't have openssl installed period, but many Linux distros split the runtime components and the developer components into separate packages. You'll need to check your distributions documentation for installation instructions. – Stephen Newell Apr 22 '18 at 11:44

1 Answers1

3

It looks like that the development package for openssl is not installed:

https://stackoverflow.com/a/3016986/5147260

phill EuL
  • 96
  • 5