Cannot compile OF on Archlinux because of OpenSSL incompatiblities. This is what I get compiling OF:
g++ -Iinclude -I/home/elly/Downloads/openFrameworks/scripts/apothecary/apothecary/build/poco/CppUnit/include -I/home/elly/Downloads/openFrameworks/scripts/apothecary/apothecary/build/poco/CppUnit/WinTestRunner/include -I/home/elly/Downloads/openFrameworks/scripts/apothecary/apothecary/build/poco/Foundation/include -I/home/elly/Downloads/openFrameworks/scripts/apothecary/apothecary/build/poco/XML/include -I/home/elly/Downloads/openFrameworks/scripts/apothecary/apothecary/build/poco/JSON/include -I/home/elly/Downloads/openFrameworks/scripts/apothecary/apothecary/build/poco/Util/include -I/home/elly/Downloads/openFrameworks/scripts/apothecary/apothecary/build/poco/Net/include -I/home/elly/Downloads/openFrameworks/scripts/apothecary/apothecary/build/poco/Crypto/include -I/home/elly/Downloads/openFrameworks/scripts/apothecary/apothecary/build/poco/NetSSL_OpenSSL/include -I/home/elly/Downloads/openFrameworks/scripts/apothecary/apothecary/build/poco/Data/include -I/home/elly/Downloads/openFrameworks/scripts/apothecary/apothecary/build/poco/Data/SQLite/include -I/home/elly/Downloads/openFrameworks/scripts/apothecary/apothecary/build/poco/Data/ODBC/include -I/home/elly/Downloads/openFrameworks/scripts/apothecary/apothecary/build/poco/Data/MySQL/include -I/home/elly/Downloads/openFrameworks/scripts/apothecary/apothecary/build/poco/Zip/include -I/home/elly/Downloads/openFrameworks/scripts/apothecary/apothecary/build/poco/PageCompiler/include -I/home/elly/Downloads/openFrameworks/scripts/apothecary/apothecary/build/poco/PageCompiler/File2Page/include -I/home/elly/Downloads/openFrameworks/scripts/apothecary/apothecary/build/poco/PDF/include -I/home/elly/Downloads/openFrameworks/scripts/apothecary/apothecary/build/poco/CppParser/include -I/home/elly/Downloads/openFrameworks/scripts/apothecary/apothecary/build/poco/MongoDB/include -I/home/elly/Downloads/openFrameworks/scripts/apothecary/apothecary/build/poco/PocoDoc/include -I/home/elly/Downloads/openFrameworks/scripts/apothecary/apothecary/build/poco/ProGen/include -Wall -Wno-sign-compare -DPOCO_BUILD_HOST=nuc -DPOCO_TARGET_OSNAME=Linux -DPOCO_TARGET_OSARCH=x86_64 -D_XOPEN_SOURCE=500 -D_REENTRANT -D_THREAD_SAFE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -DPOCO_HAVE_FD_EPOLL -g -D_DEBUG -c src/HTTPStream.cpp -o /home/elly/Downloads/openFrameworks/scripts/apothecary/apothecary/build/poco/Net/obj/Linux/x86_64/debug_static/HTTPStream.o
src/CipherImpl.cpp:80:21: error: field ‘_ctx’ has incomplete type ‘EVP_CIPHER_CTX {aka evp_cipher_ctx_st}’
EVP_CIPHER_CTX _ctx;
^~~~
In file included from /usr/include/openssl/crypto.h:31:0,
from include/Poco/Crypto/OpenSSLInitializer.h:26,
from include/Poco/Crypto/CipherKeyImpl.h:24,
from include/Poco/Crypto/CipherKey.h:24,
from include/Poco/Crypto/CipherImpl.h:25,
from src/CipherImpl.cpp:17:
/usr/include/openssl/ossl_typ.h:90:16: note: forward declaration of ‘EVP_CIPHER_CTX {aka struct evp_cipher_ctx_st}’
typedef struct evp_cipher_ctx_st EVP_CIPHER_CTX;
^~~~~~~~~~~~~~~~~
We have seen similar issues in the past. Here are also some links that might be helpful:
https://github.com/openssl/openssl/issues/962
https://github.com/openresty/encrypted-session-nginx-module/pull/13
https://github.com/jbreams/gonepass/issues/18
http://www.mail-archive.com/arch-dev-public@archlinux.org/msg25115.html
https://bbs.archlinux.org/viewtopic.php?pid=1707447#p1707447
I am not sure whether OpenSSL 1.1 is supported now by OF or if I have to compile against OpenSSL 1.0. I used several OF versions (latest stable, nightly, github clone) but nothing worked. Always same error message. Setting PKG_CONFIG_PATH does not help either because Poco simply does not care.