Thanks guys for all your help.

I am using 64-bit linux Centos.  The binaries were built with GCC 4.4.4.

I am not currently linking against libcurl.  I am just linking against
my own project.  I am pretty sure the cause of the problem is that the
symbols are not defined in the binaries produced.

see below.

[user@localhost lib]$ nm libcrypto.a | fgrep X509_STORE
                 U X509_STORE_add_lookup
00000000000000ac T X509_STORE_load_locations
0000000000000000 T X509_STORE_set_default_paths
0000000000003f26 T X509_STORE_CTX_cleanup
0000000000003a12 T X509_STORE_CTX_free
000000000000376a T X509_STORE_CTX_get0_current_crl
0000000000003755 T X509_STORE_CTX_get0_current_issuer
0000000000004140 T X509_STORE_CTX_get0_param
000000000000377f T X509_STORE_CTX_get0_parent_ctx
00000000000040d0 T X509_STORE_CTX_get0_policy_tree
00000000000036b4 T X509_STORE_CTX_get1_chain
                 U X509_STORE_CTX_get1_issuer
000000000000369f T X509_STORE_CTX_get_chain
000000000000368a T X509_STORE_CTX_get_current_cert
0000000000003648 T X509_STORE_CTX_get_error
0000000000003676 T X509_STORE_CTX_get_error_depth
000000000000361f T X509_STORE_CTX_get_ex_data
00000000000035a3 T X509_STORE_CTX_get_ex_new_index
00000000000040e5 T X509_STORE_CTX_get_explicit_policy
0000000000003a38 T X509_STORE_CTX_init
00000000000039a5 T X509_STORE_CTX_new
0000000000003838 T X509_STORE_CTX_purpose_inherit
00000000000037c8 T X509_STORE_CTX_set0_crls
0000000000004152 T X509_STORE_CTX_set0_param
0000000000003794 T X509_STORE_CTX_set_cert
00000000000037ae T X509_STORE_CTX_set_chain
00000000000040f9 T X509_STORE_CTX_set_default
000000000000403a T X509_STORE_CTX_set_depth
000000000000365c T X509_STORE_CTX_set_error
00000000000035ee T X509_STORE_CTX_set_ex_data
0000000000004060 T X509_STORE_CTX_set_flags
00000000000037e2 T X509_STORE_CTX_set_purpose
0000000000004089 T X509_STORE_CTX_set_time
000000000000380c T X509_STORE_CTX_set_trust
00000000000040b6 T X509_STORE_CTX_set_verify_cb
0000000000003efd T X509_STORE_CTX_trusted_stack
                 U X509_STORE_get1_certs
                 U X509_STORE_get1_crls
00000000000013ab T X509_STORE_CTX_get1_issuer
0000000000000928 T X509_STORE_add_cert
0000000000000a6e T X509_STORE_add_crl
0000000000000714 T X509_STORE_add_lookup
0000000000000639 T X509_STORE_free
0000000000000e4c T X509_STORE_get1_certs
000000000000106a T X509_STORE_get1_crls
00000000000007d5 T X509_STORE_get_by_subject
0000000000000484 T X509_STORE_new
0000000000001670 T X509_STORE_set1_param
00000000000015f9 T X509_STORE_set_depth
00000000000015d0 T X509_STORE_set_flags
0000000000001624 T X509_STORE_set_purpose
000000000000164a T X509_STORE_set_trust
0000000000001699 T X509_STORE_set_verify_cb
                 U X509_STORE_add_cert
                 U X509_STORE_add_crl
                 U X509_STORE_CTX_cleanup
                 U X509_STORE_CTX_init
                 U X509_STORE_CTX_set_purpose
                 U X509_STORE_CTX_cleanup
                 U X509_STORE_CTX_get_error
                 U X509_STORE_CTX_init
                 U X509_STORE_CTX_set0_crls
                 U X509_STORE_CTX_set_default
                 U X509_STORE_CTX_cleanup
                 U X509_STORE_CTX_get1_chain
                 U X509_STORE_CTX_get_error
                 U X509_STORE_CTX_init
                 U X509_STORE_CTX_set_purpose
                 U X509_STORE_CTX_set_trust
                 U X509_STORE_CTX_cleanup
                 U X509_STORE_CTX_get_error
                 U X509_STORE_CTX_init
                 U X509_STORE_CTX_set0_crls
                 U X509_STORE_CTX_set_default
                 U X509_STORE_CTX_cleanup
                 U X509_STORE_CTX_get1_chain
                 U X509_STORE_CTX_get_error
                 U X509_STORE_CTX_init
                 U X509_STORE_CTX_set_purpose
                 U X509_STORE_free

see all the "U" in libcrypto.a?  These are the undefined symbols I believe.

Thanks again for all the help.

J

On Tue, Feb 28, 2012 at 10:39 AM, Wim Lewis <w...@omnigroup.com> wrote:
>
> On 28 Feb 2012, at 9:57 AM, JonathonS wrote:
>> Here is the command I used to build openssl:
>>
>> ./Configure --prefix=/home/user/openssl_release
>> --openssldir=/home/user/openssl_release no-asm threads zlib shared
>> linux-x86_64
>>
>> After the binaries have been built, it produces libcrypto.a and
>> libssl.a.  When I try to link against it, I get a bunch of missing
>> symbols -- *some* are listed below.  There are a lot more.
>
>
> What is the command line you are using when you link against openssl? Are the 
> static libraries listed after all of the objects that reference things in 
> them?
>
> Check whether the symbols are actually defined in the static libraries--- 
> eg., "nm libcrypto.a | fgrep SSLv23_client_method" (there should be several 
> 'U'ndefined references and one defined reference to that symbol).
>
>
> ______________________________________________________________________
> OpenSSL Project                                 http://www.openssl.org
> User Support Mailing List                    openssl-users@openssl.org
> Automated List Manager                           majord...@openssl.org
______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
User Support Mailing List                    openssl-users@openssl.org
Automated List Manager                           majord...@openssl.org

Reply via email to