Re: Compiling beta2 with openssl on XP Pro

From: "Magnus Hagander" <mha(at)sollentuna(dot)net>
To: "Tony and Bryn Reina" <reina_ga(at)hotmail(dot)com>, "Tom Lane" <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: <pgsql-hackers-win32(at)postgresql(dot)org>
Subject: Re: Compiling beta2 with openssl on XP Pro
Date: 2004-09-02 18:38:06
Message-ID: 6BCB9D8A16AC4241919521715F4D8BCE475BB3@algol.sollentuna.se
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers-win32

Correct, you should only need to tweak that one place.

//Magnus

>-----Ursprungligt meddelande-----
>Från: Tony and Bryn Reina [mailto:reina_ga(at)hotmail(dot)com]
>Skickat: den 2 september 2004 20:36
>Till: Magnus Hagander; Tom Lane
>Kopia: pgsql-hackers-win32(at)postgresql(dot)org
>Ämne: Re: [pgsql-hackers-win32] Compiling beta2 with openssl on XP Pro
>
>
>Ooooo. That is ugly.
>
>Ok so if I understand correctly, I'll just need to edit rand_win.c and
>remove references to the functions like CreateDCA(at)16 and
>SelectObject(at)8?
>Will I run into the problem that these references are in other
>files or
>other things are dependant on them?
>
>-Tony
>
>p.s. Tom. I just downloaded from the CVS server. Still not
>working with the
>semi-colon and single quotes. From the looks of it, none of
>the additional
>includes are being listed in the compile command. When I use a
>colon and
>single quotes they are added correctly.
>
>$
>/configure --with-openssl --with-cassert --with-odbc
>--with-include=/usr/local/ssl/include;/usr/local/include
> --with-libs=/usr/local/ssl/lib;/usr/local/lib
>
>## --------- ##
>## Platform. ##
>## --------- ##
>
>hostname = KING
>uname -m = i686
>uname -r = 1.0.10(0.46/3/2)
>uname -s = MINGW32_NT-5.1
>uname -v = 2004-03-15 07:17
>
>configure:5800: result: yes
>configure:5916: checking for inflate in -lz
>configure:5949: gcc -o
>onftest.exe -O2 -fno-strict-aliasing
>-I./src/include/port/win32 -DEXEC_BACKEND
>conftest.c -lz -lwsock32 -lm >&5
>c:\mingw\bin\..\lib\gcc-lib\mingw32\3.2.3\..\..\..\..\mingw32\b
>in\ld.exe:
>cannot find -lz
>configure:5952: $? = 1
>configure: failed program was:
>#line 5923 "configure"
>#include "confdefs.h"
>
>/* Override any gcc2 internal prototype to avoid an error. */
>#ifdef __cplusplus
>extern "C"
>#endif
>/* We use char because int might match the return type of a gcc2
> builtin and then its argument prototype would still apply. */
>char inflate ();
>#ifdef F77_DUMMY_MAIN
># ifdef __cplusplus
> extern "C"
># endif
> int F77_DUMMY_MAIN() { return 1; }
>#endif
>int
>main ()
>{
>inflate ();
> ;
> return 0;
>}
>configure:5969: result: no
>configure:5982: error: zlib library not found
>If you have zlib already installed, see config.log for details on the
>failure. It is possible the compiler isn't looking in the
>proper directory.
>Use --without-zlib to disable zlib support.
>
>
>
>----- Original Message -----
>From: "Magnus Hagander" <mha(at)sollentuna(dot)net>
>To: "Tony and Bryn Reina" <reina_ga(at)hotmail(dot)com>; "Tom Lane"
><tgl(at)sss(dot)pgh(dot)pa(dot)us>
>Cc: <pgsql-hackers-win32(at)postgresql(dot)org>
>Sent: Thursday, September 02, 2004 8:09 PM
>Subject: SV: [pgsql-hackers-win32] Compiling beta2 with
>openssl on XP Pro
>
>
>This is the known issue that's on the open items list as "fix
>SSL compiles".
>
>The way to get it done now is to edit the source to openssl
>and remove the
>references to those functions. Yes, it's ugly and yes it needs
>a proper fix.
>
>//Magnus
>
>
>>-----Ursprungligt meddelande-----
>>Från: Tony and Bryn Reina [mailto:reina_ga(at)hotmail(dot)com]
>>Skickat: den 2 september 2004 19:57
>>Till: Tom Lane
>>Kopia: pgsql-hackers-win32(at)postgresql(dot)org
>>Ämne: Re: [pgsql-hackers-win32] Compiling beta2 with openssl on XP Pro
>>
>>
>>Haven't tried CVStip yet, but did give one more try to different
>>permutation:
>>
>> configure --with-openssl --with-cassert --with-odbc
>>'--with-include=/usr/local/ssl/include:/usr/local/include'
>>'--with-libs=/usr/local/ssl/lib:/usr/local/lib'
>>
>>which correctly sees the additional directories. So colon with
>>single quotes
>>around structure is passed correctly (which from your
>>description of the fix
>>sounds correct).
>>
>>Still have the error I reported last week with the SSL stuff.
>>It's finding
>>SSL, but bombing out on some definitions in rand_win.c. Magnus
>>said it was
>>an easy fix to the SSL includes, but he didn't remember what
>>the fix was. I
>>think other than that I should be good to go for compiling on mingw.
>>
>> $
>>/configure --with-openssl --with-cassert --with-odbc
>>--with-include=/usr/local/ssl/include:/usr/local/include
>> --with-libs=/usr/local/ssl/lib:/usr/local/lib
>>
>>## --------- ##
>>## Platform. ##
>>## --------- ##
>>
>>hostname = KING
>>uname -m = i686
>>uname -r = 1.0.10(0.46/3/2)
>>uname -s = MINGW32_NT-5.1
>>uname -v = 2004-03-15 07:17
>>
>>
>>configure:7291: checking for CRYPTO_new_ex_data in -lcrypto
>>configure:7321: gcc -o
>>onftest.exe -O2 -fno-strict-aliasing
>>-I./src/include/port/win32 -DEXEC_BACKEND
>> -L/usr/local/ssl/lib -L/usr/local/lib
>>conftest.c -lcrypto -lz -lwsock32 -lm >&5
>>configure:7327: $? = 0
>>configure:7331: test -z
>> || test ! -s conftest.err
>>configure:7334: $? = 0
>>configure:7337: test -s conftest.exe
>>configure:7340: $? = 0
>>configure:7353: result: yes
>>configure:7369: checking for SSL_library_init in -lssl
>>configure:7399: gcc -o
>>onftest.exe -O2 -fno-strict-aliasing
>>-I./src/include/port/win32 -DEXEC_BACKEND
>> -L/usr/local/ssl/lib -L/usr/local/lib
>>conftest.c -lssl -lcrypto -lz -lwsock32 -lm >&5
>>C:/msys/1.0/local/ssl/lib/libcrypto.a(rand_win.o)(.text+0xb13):
>>rand_win.c:
>>undefined reference to `CreateDCA(at)16'
>>C:/msys/1.0/local/ssl/lib/libcrypto.a(rand_win.o)(.text+0xb24):
>>rand_win.c:
>>undefined reference to `CreateCompatibleDC(at)4'
>>C:/msys/1.0/local/ssl/lib/libcrypto.a(rand_win.o)(.text+0xb39):
>>rand_win.c:
>>undefined reference to `GetDeviceCaps(at)8'
>>C:/msys/1.0/local/ssl/lib/libcrypto.a(rand_win.o)(.text+0xb49):
>>rand_win.c:
>>undefined reference to `GetDeviceCaps(at)8'
>>C:/msys/1.0/local/ssl/lib/libcrypto.a(rand_win.o)(.text+0xb63):
>>rand_win.c:
>>undefined reference to `CreateCompatibleBitmap(at)12'
>>C:/msys/1.0/local/ssl/lib/libcrypto.a(rand_win.o)(.text+0xb71):
>>rand_win.c:
>>undefined reference to `
>>C:/msys/1.0/local/ssl/lib/libcrypto.a(rand_win.o)(.text+0xb83):
>>rand_win.c:
>>undefined reference to `GetObjectA(at)12'
>>C:/msys/1.0/local/ssl/lib/libcrypto.a(rand_win.o)(.text+0xbf1):
>>rand_win.c:
>>undefined reference to `BitBlt(at)36'
>>C:/msys/1.0/local/ssl/lib/libcrypto.a(rand_win.o)(.text+0xbfb):
>>rand_win.c:
>>undefined reference to `GetBitmapBits(at)12'
>>C:/msys/1.0/local/ssl/lib/libcrypto.a(rand_win.o)(.text+0xc52):
>>rand_win.c:
>>undefined reference to `SelectObject(at)8'
>>C:/msys/1.0/local/ssl/lib/libcrypto.a(rand_win.o)(.text+0xc59):
>>rand_win.c:
>>undefined reference to `DeleteObject(at)4'
>>C:/msys/1.0/local/ssl/lib/libcrypto.a(rand_win.o)(.text+0xc63):
>>rand_win.c:
>>undefined reference to `DeleteDC(at)4'
>>C:/msys/1.0/local/ssl/lib/libcrypto.a(rand_win.o)(.text+0xc6d):
>>rand_win.c:
>>undefined reference to `DeleteDC(at)4'
>>configure:7405: $? = 1
>>configure: failed program was:
>>| /* confdefs.h. */
>>|
>>| #define PACKAGE_NAME "PostgreSQL"
>>| #define PACKAGE_TARNAME "postgresql"
>>| #define PACKAGE_VERSION "8.0.0beta2"
>>| #define PACKAGE_STRING "PostgreSQL 8.0.0beta2"
>>| #define PACKAGE_BUGREPORT "pgsql-bugs(at)postgresql(dot)org"
>>| #define PG_VERSION "8.0.0beta2"
>>| #define DEF_PGPORT 5432
>>| #define DEF_PGPORT_STR "5432"
>>| #define PG_VERSION_STR "PostgreSQL 8.0.0beta2 on
>>i686-pc-mingw32, compiled
>>by GCC gcc.exe (GCC) 3.2.3 (mingw special 20030504-1)"
>>| #define PG_KRB_SRVNAM "postgres"
>>| #define USE_SSL 1
>>| #define HAVE_LIBM 1
>>| #define HAVE_LIBWSOCK32 1
>>| #define HAVE_LIBZ 1
>>| #define HAVE_SPINLOCKS 1
>>| #define HAVE_LIBCRYPTO 1
>>| /* end confdefs.h. */
>>|
>>| /* Override any gcc2 internal prototype to avoid an error. */
>>| #ifdef __cplusplus
>>| extern "C"
>>| #endif
>>| /* We use char because int might match the return type of a gcc2
>>| builtin and then its argument prototype would still apply. */
>>| char SSL_library_init ();
>>| int
>>| main ()
>>| {
>>| SSL_library_init ();
>>| ;
>>| return 0;
>>| }
>>configure:7431: result: no
>>configure:7441: error: library 'ssl' is required for OpenSSL
>>
>>
>>----- Original Message -----
>>From: "Tom Lane" <tgl(at)sss(dot)pgh(dot)pa(dot)us>
>>To: "Tony and Bryn Reina" <reina_ga(at)hotmail(dot)com>
>>Cc: <pgsql-hackers-win32(at)postgresql(dot)org>
>>Sent: Thursday, September 02, 2004 5:46 PM
>>Subject: Re: [pgsql-hackers-win32] Compiling beta2 with
>>openssl on XP Pro
>>
>>
>>> "Tony and Bryn Reina" <reina_ga(at)hotmail(dot)com> writes:
>>>> Still no dice. It sends the switches fine, but still
>>doesn't seem to be
>>>> looking in the second directory.
>>>
>>> On looking into it, I found that the
>with-includes/libraries parts of
>>> the configure script weren't aware they were supposed to use
>>> PATH_SEPARATOR
>>> instead of a hardwired ':'. So that's at least part of the issue.
>>>
>>> Could you try CVS-tip configure and see if it works better?
>>>
>>> regards, tom lane
>>>
>>
>>---------------------------(end of
>>broadcast)---------------------------
>>TIP 1: subscribe and unsubscribe commands go to
>>majordomo(at)postgresql(dot)org
>>
>

Browse pgsql-hackers-win32 by date

  From Date Subject
Next Message Magnus Hagander 2004-09-02 18:40:34 Re: [BUGS] Win32 deadlock detection not working for Postgres8beta1
Previous Message Tony and Bryn Reina 2004-09-02 18:35:39 Re: Compiling beta2 with openssl on XP Pro