Attempt 1, Vanilla Link to Library
I\'m trying to use a patched version of OpenSSL (so DTLS is easier to use). OpenSSL is in
/usr/lo
The problem with the header file not being found seems to be you mixing up your options. -L
adds a path to the linker library search paths, while -I
adds a directory to the preprocessor header file search path. Change the -L
to -I
to solve that problem:
$ gcc -I/usr/local/openssl-1.0.1c/include server.c -o server.o
Now the linker problem is because you erroneously use the -L
option to tell the linker to look for libraries in the include path. You need to change that path to the directory where the libraries are, usually a lib
subdirectory. Also, the linker wants libraries in reverse order of their dependencies, so place the libraries you want to link with last on the command line:
$ gcc -I/usr/local/openssl-1.0.1c/include server.c -o server.o \
-L/usr/local/openssl-1.0.1c/lib -lssl -lcrypto