I am trying to build a recent OpenSSL release (0.9.8j) on OpenVMS (both
Integrity Server and Alpha Server hardware platforms). I am having
undefined symbol problems.
The issue occurs both linking applications and also linking the CRYPTO
shared image library. The link symbol warnings are:
%ILINK-W-USEUNDEF, AES_UNWRAP_KEY referenced
%ILINK-W-USEUNDEF, AES_WRAP_KEY referenced
%ILINK-W-USEUNDEF, BN_X931_DERIVE_PRIME_EX referenced
%ILINK-W-USEUNDEF, BN_X931_GENERATE_PRIME_EX referenced
%ILINK-W-USEUNDEF, BN_X931_GENERATE_XPQ referenced
%ILINK-W-USEUNDEF, DES_OPTIONS referenced
%ILINK-W-USEUNDEF, INT_SMIME_WRITE_ASN1 referenced
%ILINK-W-USEUNDEF, OSSL_LIBDES_VERSION referenced ***
%ILINK-W-USEUNDEF, SMIME_CRLF_COPY referenced
%ILINK-W-USEUNDEF, SMIME_READ_ASN1 referenced
%ILINK-W-USEUNDEF, SMIME_TEXT referenced
The vector references for LIBCRYPTOSHR.EXE are:
%ILINK-W-USEUNDEFSYMV, AES_UNWRAP_KEY referenced
%ILINK-W-USEUNDEFSYMV, AES_WRAP_KEY referenced
%ILINK-W-USEUNDEFSYMV, BN_OPTIONS referenced ***
%ILINK-W-USEUNDEFSYMV, BN_X931_DERIVE_PRIME_EX
%ILINK-W-USEUNDEFSYMV, BN_X931_GENERATE_PRIME_EX
%ILINK-W-USEUNDEFSYMV, BN_X931_GENERATE_XPQ referenced
%ILINK-W-USEUNDEFSYMV, DES_OPTIONS referenced
%ILINK-W-USEUNDEFSYMV, INT_CRYPTO_SET_DO_DYNLOCK_CALLBACK refer ***
%ILINK-W-USEUNDEFSYMV, INT_SMIME_WRITE_ASN1 referenced
%ILINK-W-USEUNDEFSYMV, SMIME_CRLF_COPY referenced
%ILINK-W-USEUNDEFSYMV, SMIME_READ_ASN1 referenced
%ILINK-W-USEUNDEFSYMV, SMIME_TEXT referenced
These two lists are not identical, but closely overlap. Asterisks in
these lists indicate symbols which appear in only one of the lists.
I have looked at the header files, and which C source (and header) files
include them and in what order. I don't see a problem with the
specification of external symbols.
I am a bit confused by some of what I see in the header files. For
example, there [.crypto.des]des_verh. starts with these definitions:
#define DES_version OSSL_DES_version
#define libdes_version OSSL_libdes_version
which define the short names as the long names. I am much more
accustomed (particularly on VMS) to #define statements which define long
symbol names to be replaced by shorter symbol names. in the case of
these two version functions, the ones actually in the C code are the
longer versions. And the long version of the second one,
OSSL_libdes_version, is one of the undefined symbols.
I would be most grateful for any guidance anyone can offer on this problem.
Thanks in advance!
Sue Abercrombie
______________________________________________________________________
OpenSSL Project http://www.openssl.org
User Support Mailing List openssl-users@openssl.org
Automated List Manager majord...@openssl.org