Thread: AIX 4.2.1 CVS head and SSL

AIX 4.2.1 CVS head and SSL

From
Samuel A Horwitz
Date:
I get the following errors 


gmake -C ecpglib all
gmake[4]: Entering directory
`/usr/local/postgres/pgsql/src/interfaces/ecpg/ecpg
lib'
../../../../src/backend/port/aix/mkldexport.sh libecpg.a > libecpg.exp
gcc -O2 -pipe -Wall -Wmissing-prototypes -Wmissing-declarations
-Wl,-bnoentry -
Wl,-H512 -Wl,-bM:SRE -o libecpg.so libecpg.a -L../../../../src/port -lm
-L/usr/
local/ssl/lib  -L../../../../src/port -L/usr/local/ssl/lib -L../pgtypeslib
-lpgt
ypes -L../../../../src/interfaces/libpq -lpq
-Wl,-bI:../../../../src/backend/p
ostgres.imp -Wl,-bE:libecpg.exp
ld: 0711-224 WARNING: Duplicate symbol: .getnameinfo_all
ld: 0711-224 WARNING: Duplicate symbol: .getaddrinfo_all
ld: 0711-224 WARNING: Duplicate symbol: .freeaddrinfo_all
ld: 0711-224 WARNING: Duplicate symbol: .rangeSockAddr
ld: 0711-224 WARNING: Duplicate symbol: .SockAddr_cidr_mask
ld: 0711-224 WARNING: Duplicate symbol: .pqsignal
ld: 0711-224 WARNING: Duplicate symbol: .pg_char_to_encoding
ld: 0711-224 WARNING: Duplicate symbol: .pg_valid_client_encoding
ld: 0711-224 WARNING: Duplicate symbol: .pg_valid_server_encoding
ld: 0711-224 WARNING: Duplicate symbol: .pg_char_to_encname_struct
ld: 0711-224 WARNING: Duplicate symbol: .pg_encoding_to_char
ld: 0711-224 WARNING: Duplicate symbol: pg_encname_tbl
ld: 0711-224 WARNING: Duplicate symbol: pg_encname_tbl_sz
ld: 0711-224 WARNING: Duplicate symbol: pg_enc2name_tbl
ld: 0711-224 WARNING: Duplicate symbol: .DLNewElem
ld: 0711-224 WARNING: Duplicate symbol: .DLNewList
ld: 0711-224 WARNING: Duplicate symbol: .DLInitList
ld: 0711-224 WARNING: Duplicate symbol: .DLFreeList
ld: 0711-224 WARNING: Duplicate symbol: .DLInitElem
ld: 0711-224 WARNING: Duplicate symbol: .DLFreeElem
ld: 0711-224 WARNING: Duplicate symbol: .DLRemove
ld: 0711-224 WARNING: Duplicate symbol: .DLAddHead
ld: 0711-224 WARNING: Duplicate symbol: .DLAddTail
ld: 0711-224 WARNING: Duplicate symbol: .DLRemHead
ld: 0711-224 WARNING: Duplicate symbol: .DLRemTail
ld: 0711-224 WARNING: Duplicate symbol: .DLMoveToFront
ld: 0711-224 WARNING: Duplicate symbol: .pg_encoding_mblen
ld: 0711-224 WARNING: Duplicate symbol: .pg_utf_mblen
ld: 0711-224 WARNING: Duplicate symbol: .pg_mule_mblen
ld: 0711-224 WARNING: Duplicate symbol: .pg_mic_mblen
ld: 0711-224 WARNING: Duplicate symbol: .pg_encoding_max_length
ld: 0711-224 WARNING: Duplicate symbol: pg_wchar_table
ld: 0711-224 WARNING: Duplicate symbol: pg_utf_mblen
ld: 0711-224 WARNING: Duplicate symbol: pg_mule_mblen
ld: 0711-224 WARNING: Duplicate symbol: .EncryptMD5
ld: 0711-224 WARNING: Duplicate symbol: .md5_hash
ld: 0711-224 WARNING: Duplicate symbol: .ParseDateTime
ld: 0711-224 WARNING: Duplicate symbol: .DecodeUnits
ld: 0711-224 WARNING: Duplicate symbol: .date2j
ld: 0711-224 WARNING: Duplicate symbol: .j2date
ld: 0711-224 WARNING: Duplicate symbol: .j2day
ld: 0711-224 WARNING: Duplicate symbol: .EncodeDateOnly
ld: 0711-224 WARNING: Duplicate symbol: .EncodeDateTime
ld: 0711-224 WARNING: Duplicate symbol: .GetEpochTime
ld: 0711-224 WARNING: Duplicate symbol: .GetCurrentDateTime
ld: 0711-224 WARNING: Duplicate symbol: .DecodeDateTime
ld: 0711-224 WARNING: Duplicate symbol: months
ld: 0711-224 WARNING: Duplicate symbol: days
ld: 0711-224 WARNING: Duplicate symbol: .tm2timestamp
ld: 0711-224 WARNING: Duplicate symbol: .DecodeInterval
ld: 0711-224 WARNING: Duplicate symbol: .EncodeInterval
ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more
information.
ld: 0711-317 ERROR: Undefined symbol: .SSL_new
ld: 0711-317 ERROR: Undefined symbol: .SSL_set_ex_data
ld: 0711-317 ERROR: Undefined symbol: .SSL_set_fd
ld: 0711-317 ERROR: Undefined symbol: .SSL_read
ld: 0711-317 ERROR: Undefined symbol: .SSL_get_error
ld: 0711-317 ERROR: Undefined symbol: .SSL_write
ld: 0711-317 ERROR: Undefined symbol: .PEM_read_DHparams
ld: 0711-317 ERROR: Undefined symbol: .DH_size
ld: 0711-317 ERROR: Undefined symbol: .DH_check
ld: 0711-317 ERROR: Undefined symbol: .BIO_new_mem_buf
ld: 0711-317 ERROR: Undefined symbol: .PEM_read_bio_DHparams
ld: 0711-317 ERROR: Undefined symbol: .BIO_free
ld: 0711-317 ERROR: Undefined symbol: .DH_generate_parameters
ld: 0711-317 ERROR: Undefined symbol: .SSL_get_ex_data
ld: 0711-317 ERROR: Undefined symbol: .PEM_read_X509
ld: 0711-317 ERROR: Undefined symbol: .X509_free
ld: 0711-317 ERROR: Undefined symbol: .PEM_read_PrivateKey
ld: 0711-317 ERROR: Undefined symbol: .X509_check_private_key
ld: 0711-317 ERROR: Undefined symbol: .EVP_PKEY_free
ld: 0711-317 ERROR: Undefined symbol: .SSL_library_init
ld: 0711-317 ERROR: Undefined symbol: .SSL_load_error_strings
ld: 0711-317 ERROR: Undefined symbol: .TLSv1_method
ld: 0711-317 ERROR: Undefined symbol: .SSL_CTX_new
ld: 0711-317 ERROR: Undefined symbol: .SSL_CTX_load_verify_locations
ld: 0711-317 ERROR: Undefined symbol: .SSL_CTX_set_verify
ld: 0711-317 ERROR: Undefined symbol: .SSL_CTX_set_verify_depth
ld: 0711-317 ERROR: Undefined symbol: .SSL_CTX_set_tmp_dh_callback
ld: 0711-317 ERROR: Undefined symbol: .SSL_CTX_ctrl
ld: 0711-317 ERROR: Undefined symbol: .SSL_CTX_free
ld: 0711-317 ERROR: Undefined symbol: .SSL_connect
ld: 0711-317 ERROR: Undefined symbol: .SSL_get_peer_certificate
ld: 0711-317 ERROR: Undefined symbol: .X509_get_subject_name
ld: 0711-317 ERROR: Undefined symbol: .X509_NAME_oneline
ld: 0711-317 ERROR: Undefined symbol: .X509_NAME_get_text_by_NID
ld: 0711-317 ERROR: Undefined symbol: .SSL_shutdown
ld: 0711-317 ERROR: Undefined symbol: .SSL_free
ld: 0711-317 ERROR: Undefined symbol: .ERR_get_error
ld: 0711-317 ERROR: Undefined symbol: .ERR_reason_error_string
ld: 0711-317 ERROR: Undefined symbol: .SSL_pending
collect2: ld returned 8 exit status
gmake[4]: *** [libecpg.so] Error 1
gmake[4]: Leaving directory
`/usr/local/postgres/pgsql/src/interfaces/ecpg/ecpgl
ib'
gmake[3]: *** [all] Error 2
gmake[3]: Leaving directory
`/usr/local/postgres/pgsql/src/interfaces/ecpg'
gmake[2]: *** [all] Error 2
gmake[2]: Leaving directory `/usr/local/postgres/pgsql/src/interfaces'
gmake[1]: *** [all] Error 2
gmake[1]: Leaving directory `/usr/local/postgres/pgsql/src'
gmake: *** [all] Error 2


My config command is as follows 

env CC=gcc ./configure LDFALGS='-lm' --with-maxbackends=1024 
--with-openssl=/usr/local/ssl --enable-syslog --enable-odbc --disable-nls

and the openssl version is OpenSSL 0.9.7b 10 Apr 2003   



Please advise


Thank you


horwitz@argoscomp.com (Samuel A Horwitz)



---------------------------(end of broadcast)---------------------------
TIP 2: you can get off all lists at once with the unregister command   (send "unregister YourEmailAddressHere" to
majordomo@postgresql.org)



Re: AIX 4.2.1 CVS head and SSL

From
"Zeugswetter Andreas SB SD"
Date:
> I get the following errors
>
>
> gmake -C ecpglib all
> gmake[4]: Entering directory
> `/usr/local/postgres/pgsql/src/interfaces/ecpg/ecpglib'
> ../../../../src/backend/port/aix/mkldexport.sh libecpg.a > libecpg.exp
> gcc -O2 -pipe -Wall -Wmissing-prototypes -Wmissing-declarations -Wl,-bnoentry -
> Wl,-H512 -Wl,-bM:SRE -o libecpg.so libecpg.a
> -L../../../../src/port -lm
> -L/usr/local/ssl/lib  -L../../../../src/port -L/usr/local/ssl/lib
> -L../pgtypeslib
> -lpgtypes -L../../../../src/interfaces/libpq -lpq
> -Wl,-bI:../../../../src/backend/postgres.imp -Wl,-bE:libecpg.exp

> ld: 0711-317 ERROR: Undefined symbol: .SSL_new
> ld: 0711-317 ERROR: Undefined symbol: .SSL_set_ex_data
> ld: 0711-317 ERROR: Undefined symbol: .SSL_set_fd
> ld: 0711-317 ERROR: Undefined symbol: .SSL_read
> ld: 0711-317 ERROR: Undefined symbol: .SSL_get_error
> ld: 0711-317 ERROR: Undefined symbol: .SSL_write

You can get around that problem by adding the SSL library to the link line
manually (-lssl).

AIX wants all symbols resolved at link time (or at least be told where to
load them from at runtime with an *.imp file).

All Platforms with that requirement will have that problem when linking
libecpg.so with ssl.

Sorry I don't have time to fix it right now.

Andreas


Re: AIX 4.2.1 CVS head and SSL

From
Tom Lane
Date:
"Zeugswetter Andreas SB SD" <ZeugswetterA@spardat.at> writes:
> You can get around that problem by adding the SSL library to the link line
> manually (-lssl).
> Sorry I don't have time to fix it right now.

A minimal patch to fix this might look like the attached.  But I'm not sure
it's sufficient; potentially you might need to add more libraries to the
filter command (compare the filter in src/interfaces/libpq/Makefile's
setting of SHLIB_LINK).  Could you try it out and report back?
        regards, tom lane

*** src/interfaces/ecpg/ecpglib/Makefile.orig    Fri Aug  1 12:46:18 2003
--- src/interfaces/ecpg/ecpglib/Makefile    Tue Sep 16 01:29:43 2003
***************
*** 21,27 **** OBJS= execute.o typename.o descriptor.o data.o error.o prepare.o memory.o \     connect.o misc.o 
! SHLIB_LINK = -L../pgtypeslib -lpgtypes $(libpq) $(THREAD_LIBS)  all: all-lib 
--- 21,27 ---- OBJS= execute.o typename.o descriptor.o data.o error.o prepare.o memory.o \     connect.o misc.o 
! SHLIB_LINK = -L../pgtypeslib -lpgtypes $(libpq) $(filter -lssl, $(LIBS)) $(THREAD_LIBS)  all: all-lib