Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people, just like you, are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
Solved

Can't connect to postgresql from 3rd party application

Posted on 2009-03-31
13
754 Views
Last Modified: 2012-05-06
Hi,
 I'm running postgresql 8.3.5 on win xp. I have no problem seeing and querying my db's through pgadmin. However, I'm trying to make a connection from a 3rd party program, (Manifold GIS -http://www.manifold.net/index.shtml), and I am getting this error

Entry Point Not Found

The prodecure entry point krb5_cc_get_principal couldnt not be located in the dynamic link library krb5_32.dll

the application states that it needs the /bin folder of the postgresql install on the PATH variable, which i have done. It appears it is at least finding some of the .dlls  (if i remove the bin folder from the path, i get a more generalized "can't connect" error, which is expected).

any ideas?
other uses have reported that they could connect to this version of postgresql from manifold after placing the .dll's in the PATH environmental variable.
0
Comment
Question by:chrismarx
  • 5
  • 5
  • 3
13 Comments
 
LVL 62

Expert Comment

by:gheist
ID: 24036210
Umm.... And what sort of connection API you are using?
0
 

Author Comment

by:chrismarx
ID: 24045937
i'm not sure,
 i've used this program in the past to make connections to oracle, and when i do so , i use a connection profile that utilizes the native oracle oci interface. there are also options to use odbc or oledb. for postgres, this is also a native postgresql option, which im assuming also using whatever the equivalent of native drivers for postgres uses-
0
 
LVL 3

Expert Comment

by:sreindl04
ID: 24046802
Do you have different versions of krb5_32.dll installed on your system. If yes please ensure that the postgres directory is inserted in the %PATH% before the location of the other occourences of krb5_32.dll.
0
NFR key for Veeam Backup for Microsoft Office 365

Veeam is happy to provide a free NFR license (for 1 year, up to 10 users). This license allows for the non‑production use of Veeam Backup for Microsoft Office 365 in your home lab without any feature limitations.

 

Author Comment

by:chrismarx
ID: 24051412
i did a full system search and i turned up a couple of other krb5_32.dll files

krb5_32.dll   C:\WINDOWS
krb5_32.dll   C:\Program Files\TortoiseCVS

these two both seem to be related to kerberos security, but they are not on the "Path" environmental system variable. how should i proceed?
0
 
LVL 62

Expert Comment

by:gheist
ID: 24051745
C:\WINDOWS\ is defienetly in path, just rename your private copy of dll and system will use default one from c:\windows\
0
 
LVL 3

Expert Comment

by:sreindl04
ID: 24054485
The file krb5_32.dll refers to the MIT Kerberos implementation for windows. The question is now which software installed a version of this software directly into windows?

1. I would suggest to check if replacing the version in c:\windows\ with the version from your postgres installation. PLEASE MAKE A BACKUP OF THE FILE IN C:\WINDOWS\ before.

2. Ensure that postgres appears in the path before tortoisesvn

Could you please also check the versions of the DLLs (please select the file, right button and then "Details")? You should see a string "Fileversion" like 1.x.x (for my postgres release it's 1.6.2.13)
0
 
LVL 62

Expert Comment

by:gheist
ID: 24054530
You can install this:
http://www.dependencywalker.com/
And check if two instances of same DLL are not loaded in same app.
0
 

Author Comment

by:chrismarx
ID: 24065441
ok,
 i checked the version number of the krb5_32.dll from postgres, its  1.6.2.13
which is different than the orginal krb5_32.dll that was in the windows directory. i placed the new one in the windows directory, and even restarted the machine, but still the exact same error. also, tortoisesvn isnt on the "path", nor is any other location that has a copy of that dll.

i installed the dependencywalker, but im unsure how to use it to make the test you describe. i sure would like to get this working!
0
 
LVL 62

Expert Comment

by:gheist
ID: 24068438
Open postgresql executable with depends.exe, then have a look at dlls in strange places.
0
 

Author Comment

by:chrismarx
ID: 24068497
i did that, all the dlls that its looking for are either in its own bin folder, or windows\system32\
i feel like the problem is that manifold maybe isnt finding the right dlls, not postgresql. but i dont see how i would be able to test that?
0
 
LVL 62

Expert Comment

by:gheist
ID: 24068688
You have to look for case when same dll is in two places.
0
 
LVL 3

Accepted Solution

by:
sreindl04 earned 500 total points
ID: 24068848
I had the same problem with apache/php and module php_pgsql. The only solution we've found was to copy all .dll files from the postgres/bin folder to the application directory of the program using the pgsql libraries. You might create problems with this solution (missing updates, ...) but at least this works.
0
 

Author Closing Comment

by:chrismarx
ID: 31564930
i freakin love you, thank youuuuuuuuuuuuu!!!!!
that was it, so simple, wish more people knew about this-
0

Featured Post

Announcing the Most Valuable Experts of 2016

MVEs are more concerned with the satisfaction of those they help than with the considerable points they can earn. They are the types of people you feel privileged to call colleagues. Join us in honoring this amazing group of Experts.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Best database to use for Maps is PostgreSQL. This is an open source database. Comes as a package with most Linux OS. For more info visit the following site: http://www.postgresql.org/ (http://www.postgresql.org/) This requires some add-o…
Many developers have database experience, but are new to PostgreSQL. It has some truly inspiring capabilities. I have several years' experience with Microsoft's SQL Server. When I began working with MySQL, I wanted a quick-reference to MySQL (htt…
Steps to create a PostgreSQL RDS instance in the Amazon cloud. We will cover some of the default settings and show how to connect to the instance once it is up and running.

791 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question