Hello, I compiled the last openssl from source with ./config --prefxi=/usr.
nano /usr/lib/pkgconfig/libssl.pc Code: prefix=/usr exec_prefix=${prefix} libdir=${exec_prefix}/lib includedir=${prefix}/include Name: OpenSSL Description: Secure Sockets Layer and cryptography libraries Version: 1.0.1e Requires: Libs: -L${libdir} -lssl -lcrypto Libs.private: -ldl Cflags: -I${includedir} I tried to compile the following test program with "gcc ssl_accept.c -o sslaccept -lssl 2> outputsslgcc": Code: /* confdefs.h. */ #define PACKAGE_NAME "Zarafa" #define PACKAGE_TARNAME "zarafa" #define PACKAGE_VERSION "7.0.0" #define PACKAGE_STRING "Zarafa 7.0.0" #define PACKAGE_BUGREPORT "zarafa-dev zarafa.com" #define PACKAGE "zarafa" #define VERSION "7.0.0" #define STDC_HEADERS 1 #define HAVE_SYS_TYPES_H 1 #define HAVE_SYS_STAT_H 1 #define HAVE_STDLIB_H 1 #define HAVE_STRING_H 1 #define HAVE_MEMORY_H 1 #define HAVE_STRINGS_H 1 #define HAVE_INTTYPES_H 1 #define HAVE_STDINT_H 1 #define HAVE_UNISTD_H 1 #define HAVE_DLFCN_H 1 #define YYTEXT_POINTER 1 #define STDC_HEADERS 1 #define HAVE_STDBOOL_H 1 #define restrict __restrict #define TIME_WITH_SYS_TIME 1 #define HAVE_NCURSES_H 1 #define HAVE_MEMORY_H 1 #define HAVE_STDDEF_H 1 #define HAVE_STDLIB_H 1 #define HAVE_STRING_H 1 #define HAVE_SYS_TIMEB_H 1 #define HAVE_WCHAR_H 1 #define HAVE_SYSLOG_H 1 #define HAVE_SYS_UN_H 1 #define HAVE_SYS_STAT_H 1 #define HAVE_OPENSSL_SSL_H 1 #define HAVE_ZLIB_H 1 #define HAVE_STDLIB_H 1 #define HAVE_MALLOC 1 #define HAVE_SYS_TIME_H 1 #define HAVE_UNISTD_H 1 #define HAVE_ALARM 1 #define HAVE_STDLIB_H 1 #define HAVE_REALLOC 1 #define HAVE_STRFTIME 1 #define HAVE_VPRINTF 1 #define RETSIGTYPE void #define RETSIGTYPE void #define HAVE_RANDOM 1 #define HAVE_GETTIMEOFDAY 1 #define HAVE_FTIME 1 #define HAVE_LOCALTIME_R 1 #define HAVE_TIMEGM 1 #define HAVE_GMTIME 1 #define HAVE_GMTIME_R 1 #define HAVE_MEMCHR 1 #define HAVE_MEMSET 1 #define HAVE_SELECT 1 #define HAVE_SOCKET 1 #define HAVE_STRCHR 1 #define HAVE_STRERROR 1 #define HAVE_STRRCHR 1 #define HAVE_STRSTR 1 #define HAVE_STRTOL 1 #define HAVE_STRTOUL 1 #define HAVE_STRTOLL 1 #define HAVE_STRTOULL 1 #define HAVE_SSCANF 1 #define HAVE_STRTOF_L 1 #define HAVE_STRTOD_L 1 #define HAVE_WCTOMB 1 #define HAVE_MBTOWC 1 #define HAVE_DCGETTEXT 1 #define HAVE_GETHOSTBYNAME_R 1 #define HAVE_GETPWNAM_R 1 #define HAVE_VSYSLOG 1 #define HAVE_MYSQL_SET_CHARACTER_SET 1 #define HAVE_VMIME_UTILITY_SMARTPTRINT_HPP 1 #define HAVE_LIBICAL_ICAL_H 1 #define HAVE_CLUCENE_H 1 #define HAVE_SHADOW_H 1 #define HAVE_LIBCRYPT 1 /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif char SSL_accept (); int main () { return SSL_accept (); ; return 0; } But I get a lot of undefinied function errors in libssl.a like this: /usr/lib/gcc/sparc-unknown-linux-gnu/4.6.0/../../../libssl.a(ssl_lib.o)(.text+0x368): In function `ssl_undefined_function': : undefined reference to `ERR_put_error' /usr/lib/gcc/sparc-unknown-linux-gnu/4.6.0/../../../libssl.a(ssl_lib.o)(.text+0x3c8): In function `SSL_CTX_free.part.5': : undefined reference to `X509_VERIFY_PARAM_free' /usr/lib/gcc/sparc-unknown-linux-gnu/4.6.0/../../../libssl.a(ssl_lib.o)(.text+0x3f0): In function `SSL_CTX_free.part.5': : undefined reference to `CRYPTO_free_ex_data' /usr/lib/gcc/sparc-unknown-linux-gnu/4.6.0/../../../libssl.a(ssl_lib.o)(.text+0x408): In function `SSL_CTX_free.part.5': : undefined reference to `lh_free' /usr/lib/gcc/sparc-unknown-linux-gnu/4.6.0/../../../libssl.a(ssl_lib.o)(.text+0x420): In function `SSL_CTX_free.part.5': : undefined reference to `X509_STORE_free' /usr/lib/gcc/sparc-unknown-linux-gnu/4.6.0/../../../libssl.a(ssl_lib.o)(.text+0x438): In function `SSL_CTX_free.part.5': : undefined reference to `sk_free' /usr/lib/gcc/sparc-unknown-linux-gnu/4.6.0/../../../libssl.a(ssl_lib.o)(.text+0x450): In function `SSL_CTX_free.part.5': : undefined reference to `sk_free' /usr/lib/gcc/sparc-unknown-linux-gnu/4.6.0/../../../libssl.a(ssl_lib.o)(.text+0x480): In function `SSL_CTX_free.part.5': : undefined reference to `X509_NAME_free' /usr/lib/gcc/sparc-unknown-linux-gnu/4.6.0/../../../libssl.a(ssl_lib.o)(.text+0x484): In function `SSL_CTX_free.part.5': : undefined reference to `sk_pop_free'[...] If I do objdump /usr/lib/libssl.a -t it prints for example: s2_srvr.o: file format elf32-sparc SYMBOL TABLE: 00000000 l df *ABS* 00000000 s2_srvr.c 00000000 l d .text 00000000 00000000 l d .data 00000000 00000000 l d .bss 00000000 00000000 l F .text 0000001c ssl2_get_server_method 00000000 l O .rodata 00000074 SSLv2_server_method_data.14895 00000000 l d .rodata.str1.8 00000000 00000000 l d .rodata 00000000 00000000 l d .note.GNU-stack 00000000 00000000 l d .comment 00000000 0000001c g F .text 000019ec ssl2_accept 00000000 *UND* 00000000 time 00000000 *UND* 00000000 RAND_add 00000000 *UND* 00000000 ERR_clear_error 00000000 *UND* 00000000 __errno_location 00000000 *UND* 00000000 SSL_state 00000000 *UND* 00000000 ssl2_do_write 00000000 *UND* 00000000 SSL_clear 00000000 *UND* 00000000 ssl2_read 00000000 *UND* 00000000 ssl_get_prev_session 00000000 *UND* 00000000 ssl_get_new_session 00000000 *UND* 00000000 memcpy 00000000 *UND* 00000000 ERR_put_error [...] It seems that this "undefined functions" are defined in libssl.a. I got no idea why this undefinied functions errors occour. Or is this a gcc problem? Any help is appreciated. Thanks Martin ______________________________________________________________________ OpenSSL Project http://www.openssl.org User Support Mailing List openssl-users@openssl.org Automated List Manager majord...@openssl.org