Skip site navigation (1) Skip section navigation (2)

Re: Compiling psqlodbc REL-07_03_ENHANCED and 07.03.260

From: Lothar Behrens <lothar(dot)behrens(at)lollisoft(dot)de>
To: pgsql-odbc(at)postgresql(dot)org
Subject: Re: Compiling psqlodbc REL-07_03_ENHANCED and 07.03.260
Date: 2006-03-23 10:05:52
Message-ID: 5a4abc7ce7138e12862e134dda854253@lollisoft.de (view raw or flat)
Thread:
Lists: pgsql-odbc
On more note:

My last test was based on version 07.03.0200. I now also have tested 
REL-07_03_ENHANCED.
There was only an installation problem, thus I simply copied the file.

I also determined some possible mismatch with driver installation.

Error in lbQuery: (SQLConnect()) 00000: 0 - [iODBC][Driver 
Manager]dlcompat: file "/usr/local/lib/psqlodbc.so" not found
See [iODBC] !

I have compiled the driver with unixodbc. Also changing the psqlodbc.so 
to psqlodbc30w.so (in ~/.odbc.ini) does not affect.
If I change using psqlodbc30w.so in ~/Library/ODBC/odbc.ini, it affect.

But strange: Regardless of the other configuration data in 
~/Library/ODBC/odbc.ini, I only have access to my database, when
that file is additionally copied to ~/.odbc.ini.

Installing driver error:

mac:~/psql-odbc-cvs/psqlodbc lothar$ sudo make install
test -z "/usr/local/lib" ||  "/usr/local/lib"
/bin/sh: line 1: /usr/local/lib: is a directory
make[1]: *** [install-libLTLIBRARIES] Error 126
make: *** [install-am] Error 2

But at all least, the driver (REL-07_03_ENHANCED) seems to work 
correctly in my GUI.

Regards, Lothar

Am 23.03.2006 um 10:31 schrieb Lothar Behrens:

> I have it !
>
> While going back until reading configuration from ini files, I 
> determined, that ODBC_INI is a file with that name: .odbc.ini
> Copying my configuration to the right place solved the problem.
>
> On Mac OS X, the ODBC setup application saves the user's configuration 
> in ~/Library/ODBC/odbc.ini where as the driver
> searches it at ~/.odbc.ini.
>
> My suggestion would be to distinuish between UNIX and Mac OS X by 
> another #define and on Mac first try ~/Library/ODBC/odbc.ini
> in SQLGetPrivateProfileString, then ~/.odbc.ini.
>
> Regards, Lothar
>
> Am 23.03.2006 um 09:17 schrieb Lothar Behrens:
>
>> Yes,
>>
>> linking against ssl solved the SSL_read problem. But it didn't solved 
>> the md5 functions problem.
>> I have prefixed them with psql_ and that helped.
>>
>> I am not sure changing all references to these changes.
>>
>> At the end, I get the same error as with the 07.03.200 driver version.
>> Also I didn't see any debug message, only log messages that didn't 
>> tell me much :-(
>>
>> I'll try more today...
>>
>> Lothar
>>
>> Here is a diff:
>>
>> Index: config.h.in
>> ===================================================================
>> RCS file: /cvsroot/psqlodbc/psqlodbc/Attic/config.h.in,v
>> retrieving revision 1.2.2.5
>> diff -u -r1.2.2.5 config.h.in
>> --- config.h.in 15 Mar 2006 14:31:22 -0000      1.2.2.5
>> +++ config.h.in 23 Mar 2006 08:10:56 -0000
>> @@ -109,7 +109,7 @@
>>  #undef WITH_UNIXODBC
>>
>>  /* Define to 1 if your <sys/time.h> declares `struct tm'. */
>> -#undef TM_IN_SYS_TIME
>> +#define TM_IN_SYS_TIME 1
>>
>>  /* Force define to 1 to build with unicode support */
>>  #undef UNICODE_SUPPORT
>> Index: md5.c
>> ===================================================================
>> RCS file: /cvsroot/psqlodbc/psqlodbc/md5.c,v
>> retrieving revision 1.10.4.3
>> diff -u -r1.10.4.3 md5.c
>> --- md5.c       24 Jan 2006 12:03:42 -0000      1.10.4.3
>> +++ md5.c       23 Mar 2006 08:11:02 -0000
>> @@ -305,7 +305,7 @@
>>   *
>>   */
>>  bool
>> -md5_hash(const void *buff, size_t len, char *hexsum)
>> +psql_md5_hash(const void *buff, size_t len, char *hexsum)
>>  {
>>         uint8           sum[16];
>>
>> @@ -328,7 +328,7 @@
>>   * Returns TRUE if okay, FALSE on error (out of memory).
>>   */
>>  bool
>> -EncryptMD5(const char *passwd, const char *salt, size_t salt_len,
>> +psql_EncryptMD5(const char *passwd, const char *salt, size_t 
>> salt_len,
>>                    char *buf)
>>  {
>>         size_t          passwd_len = strlen(passwd);
>> @@ -343,7 +343,7 @@
>>         memcpy(crypt_buf + passwd_len, salt, salt_len);
>>
>>         strcpy(buf, "md5");
>> -       ret = md5_hash(crypt_buf, passwd_len + salt_len, buf + 3);
>> +       ret = psql_md5_hash(crypt_buf, passwd_len + salt_len, buf + 
>> 3);
>>
>>         pfree(crypt_buf);
>>
>> Index: md5.h
>> ===================================================================
>> RCS file: /cvsroot/psqlodbc/psqlodbc/md5.h,v
>> retrieving revision 1.8.6.2
>> diff -u -r1.8.6.2 md5.h
>> --- md5.h       18 Jan 2006 09:52:15 -0000      1.8.6.2
>> +++ md5.h       23 Mar 2006 08:11:02 -0000
>> @@ -42,8 +42,8 @@
>>  typedef unsigned int uint32;   /* == 32 bits */
>>  #endif /* not HAVE_UINT8 */
>>
>> -extern bool md5_hash(const void *buff, size_t len, char *hexsum);
>> -extern bool EncryptMD5(const char *passwd, const char *salt,
>> +extern bool psql_md5_hash(const void *buff, size_t len, char 
>> *hexsum);
>> +extern bool psql_EncryptMD5(const char *passwd, const char *salt,
>>                    size_t salt_len, char *buf);
>>
>>  #endif
>>
>>
>>
>> Am 22.03.2006 um 18:28 schrieb Tom Lane:
>>
>>> Lothar Behrens <lothar(dot)behrens(at)lollisoft(dot)de> writes:
>>>> gcc -r -keep_private_externs -nostdlib -o 
>>>> .libs/psqlodbc30w.so-master.o
>>>>   info.lo bind.lo columninfo.lo connection.lo convert.lo drvconn.lo
>>>> environ.lo execute.lo lobj.lo win_md5.lo misc.lo options.lo 
>>>> pgtypes.lo
>>>> psqlodbc.lo qresult.lo results.lo socket.lo parse.lo statement.lo
>>>> tuple.lo dlg_specific.lo loadlib.lo multibyte.lo odbcapi.lo
>>>> descriptor.lo odbcapi30.lo pgapi30.lo info30.lo mylog.lo && gcc 
>>>> -bundle
>>>>   -o .libs/psqlodbc30w.so .libs/psqlodbc30w.so-master.o  -L/sw/lib 
>>>> -lpq
>>>> -L/usr/local/lib -lodbcinst -lc
>>>> ld: .libs/psqlodbc30w.so-master.o illegal reference to symbol:
>>>> _SSL_read defined in indirectly referenced dynamic library
>>>> /usr/lib/libssl.0.9.7.dylib
>>>
>>> I think Darwin's linker may insist on -lssl appearing in the link 
>>> command.
>>>
>>> 			regards, tom lane
>>>
>>> ---------------------------(end of 
>>> broadcast)---------------------------
>>> TIP 6: explain analyze is your friend
>>>
>>>
>> --
>> Lothar Behrens	|	Rapid Prototyping ...
>> Rosmarinstr 3		|	
>> 40235 Düsseldorf  	|	www.lollisoft.de
>>
>>
>>
>> ---------------------------(end of 
>> broadcast)---------------------------
>> TIP 1: if posting/reading through Usenet, please send an appropriate
>>       subscribe-nomail command to majordomo(at)postgresql(dot)org so that 
>> your
>>       message can get through to the mailing list cleanly
>>
>>
> --
> Lothar Behrens	|	Rapid Prototyping ...
> Rosmarinstr 3		|	
> 40235 Düsseldorf  	|	www.lollisoft.de
>
>
>
> ---------------------------(end of 
> broadcast)---------------------------
> TIP 3: Have you checked our extensive FAQ?
>
>               http://www.postgresql.org/docs/faq
>
>
--
Lothar Behrens	|	Rapid Prototyping ...
Rosmarinstr 3		|	
40235 Düsseldorf  	|	www.lollisoft.de



In response to

pgsql-odbc by date

Next:From: Åsmund Kveim LieDate: 2006-03-23 15:51:09
Subject: Text arrays fails with MaxVarCharSize > 16383
Previous:From: Lothar BehrensDate: 2006-03-23 09:31:26
Subject: Re: Compiling psqlodbc REL-07_03_ENHANCED and 07.03.260

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group