Hi all,

I am having some linking problems while using "libeay32.lib" on
windows (see link errors below).

I created libeay32.lib on windows by compiling openssl source as
described in "INSTALL.W32" by carrying out following steps:

1. > perl Configure VC-WIN32
2.  > ms\do_ms
3.  > nmake -f ms\nt.mak (for static version)

as a result of above stps "libeay32.lib" and "ssleay32.lib" were
created. All tests passed successfuly!

Now when I try to use these libraries in an application created in
CodeWarrior, following link errors occur:


-----Link Errors Begin-----

Warning: Cannot locate library "MSVCRT" specified in #pragma comment(lib,...)
referenced from tmp32\ssl_lib.obj

Warning: Cannot locate library "OLDNAMES" specified in #pragma comment(lib,...)
referenced from tmp32\ssl_lib.obj

Link Error   : Undefined symbol: '__declspec(dllimport) _abort (__imp__abort)'
referenced from '_CRYPTO_add_lock' in tmp32\cryptlib.obj (libeay32.lib)
referenced from '_CRYPTO_add_lock' in tmp32\cryptlib.obj (libeay32.lib)
referenced from '_OpenSSLDie' in tmp32\cryptlib.obj (libeay32.lib)
referenced from '_CRYPTO_lock' in tmp32\cryptlib.obj (libeay32.lib)

Link Error   : Undefined symbol: '__declspec(dllimport) __iob (__imp___iob)'
referenced from '_CRYPTO_add_lock' in tmp32\cryptlib.obj (libeay32.lib)
referenced from '_CRYPTO_add_lock' in tmp32\cryptlib.obj (libeay32.lib)
referenced from '_OpenSSLDie' in tmp32\cryptlib.obj (libeay32.lib)
referenced from '_RSA_verify' in tmp32\rsa_sign.obj (libeay32.lib)
referenced from '_PEM_def_callback' in tmp32\pem_lib.obj (libeay32.lib)
referenced from '_PEM_do_header' in tmp32\pem_lib.obj (libeay32.lib)
referenced from '_open_console' in tmp32\ui_openssl.obj (libeay32.lib)
referenced from '_open_console' in tmp32\ui_openssl.obj (libeay32.lib)
...

Link Error   : Undefined symbol: '__declspec(dllimport) __pctype
(__imp___pctype)'
referenced from '_X509_NAME_cmp' in tmp32\x509_cmp.obj (libeay32.lib)
referenced from '_X509_NAME_cmp' in tmp32\x509_cmp.obj (libeay32.lib)
referenced from '_X509_NAME_cmp' in tmp32\x509_cmp.obj (libeay32.lib)
referenced from '_X509_NAME_cmp' in tmp32\x509_cmp.obj (libeay32.lib)
referenced from '_X509_NAME_cmp' in tmp32\x509_cmp.obj (libeay32.lib)
referenced from '_X509_NAME_cmp' in tmp32\x509_cmp.obj (libeay32.lib)
referenced from '_X509_NAME_cmp' in tmp32\x509_cmp.obj (libeay32.lib)
referenced from '__dopr' in tmp32\b_print.obj (libeay32.lib)
...

Link Error   : Undefined symbol: '__declspec(dllimport) ___mb_cur_max
(__imp____mb_cur_max)'
referenced from '_X509_NAME_cmp' in tmp32\x509_cmp.obj (libeay32.lib)
referenced from '_X509_NAME_cmp' in tmp32\x509_cmp.obj (libeay32.lib)
referenced from '_X509_NAME_cmp' in tmp32\x509_cmp.obj (libeay32.lib)
referenced from '_X509_NAME_cmp' in tmp32\x509_cmp.obj (libeay32.lib)
referenced from '_X509_NAME_cmp' in tmp32\x509_cmp.obj (libeay32.lib)
referenced from '_X509_NAME_cmp' in tmp32\x509_cmp.obj (libeay32.lib)
referenced from '_X509_NAME_cmp' in tmp32\x509_cmp.obj (libeay32.lib)
referenced from '__dopr' in tmp32\b_print.obj (libeay32.lib)
...

Link Error   : Undefined symbol: '__declspec(dllimport) __isctype
(__imp___isctype)'
referenced from '__dopr' in tmp32\b_print.obj (libeay32.lib)
referenced from '__dopr' in tmp32\b_print.obj (libeay32.lib)
referenced from '_X509V3_parse_list' in tmp32\v3_utl.obj (libeay32.lib)
referenced from '_X509V3_parse_list' in tmp32\v3_utl.obj (libeay32.lib)
referenced from '_X509V3_parse_list' in tmp32\v3_utl.obj (libeay32.lib)
referenced from '_X509V3_parse_list' in tmp32\v3_utl.obj (libeay32.lib)
referenced from '_X509V3_parse_list' in tmp32\v3_utl.obj (libeay32.lib)
referenced from '_X509V3_parse_list' in tmp32\v3_utl.obj (libeay32.lib)
...

Link Error   : Undefined symbol: '__declspec(dllimport) __errno (__imp___errno)'
referenced from '_BIO_new_file' in tmp32\bss_file.obj (libeay32.lib)

Link Error   : Undefined symbol: '__aulldiv'
referenced from '_BN_div' in tmp32\bn_div.obj (libeay32.lib)
referenced from '_bn_div_words' in tmp32\bn_asm.obj (libeay32.lib)
referenced from '_fmtint' in tmp32\b_print.obj (libeay32.lib)

Link Error   : Undefined symbol: '__aullrem'
referenced from '_fmtint' in tmp32\b_print.obj (libeay32.lib)

Link Error   : Undefined symbol: '__allmul'
referenced from '_bn_mul_add_words' in tmp32\bn_asm.obj (libeay32.lib)
referenced from '_bn_mul_add_words' in tmp32\bn_asm.obj (libeay32.lib)
referenced from '_bn_mul_add_words' in tmp32\bn_asm.obj (libeay32.lib)
referenced from '_bn_mul_add_words' in tmp32\bn_asm.obj (libeay32.lib)
referenced from '_bn_mul_add_words' in tmp32\bn_asm.obj (libeay32.lib)
referenced from '_bn_mul_add_words' in tmp32\bn_asm.obj (libeay32.lib)
referenced from '_bn_mul_add_words' in tmp32\bn_asm.obj (libeay32.lib)
referenced from '_bn_mul_words' in tmp32\bn_asm.obj (libeay32.lib)
...
-----Link Errors End-----

What I understand of these errors is that linker could not find
definitions of following variables/functions in the library:
1. _abort
2. __iob
3. __pctype
4. __errno
5. ___mb_cur_max
6. __isctype
7. __aulldiv
8. __aullrem
9. __allmul

Now:
Do I need to include some other libraries in which these
variables/functions are defind, if yes then which ones?

or Did I compile openssl with wrong options (I am using default
straight way of compiling openssl as laid out in INSTALL.W32)?

Any help in this regard will be highly appreciated.

Many thanks in advance.

---
Qadeer Baig.
______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
User Support Mailing List                    openssl-users@openssl.org
Automated List Manager                           [EMAIL PROTECTED]

Reply via email to