You need to put the static library at the END of your link command. A static
library is searched when it is encountered in the link stream, and only the
items needed will be used from it.
Because you have it first, there are no undefined symbols, and no items will be
used from it.
From: opens
You might try changing this:
8. gcc -shared -o librsa_engine.so libdune/libdune.a -lcrypto rsa-engine.o
rsa/rsa.o rsa/bignum.o rsa/aes.o rsa/x509parse.o rsa/pem.o
to this:
gcc –shared –o librsa_engine.so –L./libdune rsa_engine.o
rsa/rsa.o rsa/bignum.o rsa/aes.o rsa/x509parse.