0

I have a windows 7 machine 64-bit, I installed Postgresql 9.3 via the opengeo suite 4.0.2 in the program files (x86) folder, so I guess I have to install the 32-bit version of the extension. I am trying to load the 2.0.0 version of pg routing and I always get the mentioned error message. Anyone has suggestions in order to get work?

  • How did you install it. Did you copy over all the files from the pgrouting zip file into your install from here? winnie.postgis.net/download/windows/pg93/buildbot I also assume you are using their PostGIS? our libgcc might be different which could be the problem. I usually use dependency walker to help determine the issue. – LR1234567 May 16 '14 at 21:37
  • Yes I downloaded there the zip, unzipped and copied the files in my Postgresql installation folder, in my case C:\Program Files (x86)\Boundless\OpenGeo\pgsql. I installed PostGIS libraries with the opengeo suite, I just input the <code>create extension PostGIS;</code>, to add it to my postgresql. When you sey "their PostGIS" I guess you are saying the PostGIS bundled in the opengeo suite. What is the libgcc? I am quite new to this and yet don't know many terms. What is dependency walker? Is this a utility for windows to check dependencies? Thanks for helping! – user3523583 May 16 '14 at 23:10
  • Yes dependency walker is a free windows program you can download from here: dependencywalker.com it shows you all the dependencies of a dll. As far as I know both the PostGIS we distribute as part of EDB and OpenGeo both use mingw-w64 chain for building (both 32 and 64-bit) (which is a basically a unix c toolkit for building windows libraries). It might be something else missing though since we tested ours with PostgreSQL EDB installs and made sure not to package libraries already distributed by EDB install. So theirs might be missing a library we are assuming is there. – LR1234567 May 17 '14 at 3:03
  • Actually looking at this more 998 is an access violation error, so don't think you are missing a library. Still could be an incompatibility issue with how we each compile. Did you try restarting the postgres service already? – LR1234567 May 17 '14 at 3:13
  • I tried restarting the service, still does not work. I analysed with dependency walker all the .ddl libraries from pgrouting. Each time the program does not find the some dependencies, in particular I noticed that it cannot find the library LIBCGAL.dll, but this is there in the bin folder. Besides it says it cannot find the file Posgres.exe in each .dll of the pgrouting extension. But, when I test the library librouting_dd.dll, which is the one the causes the error, according to the message I receive, more dependencies are not found. I attach here the log file with the libraries not found – user3523583 May 17 '14 at 10:05
2

I'm going to test this out later, but unfortunately I'm busy at the moment. Like I said, I don't think you are missing dlls since you are getting a memory access violation (which is a particular kind of violation that only happens when running 32-bit app on 64-bit windows) i think.
It could very well be just a security violation. Do you have UAC on? Might want to try what is described here first:

http://answers.microsoft.com/en-us/windows/forum/windows_7-gaming/i-get-load-library-failed-error-998-invalid-access/68c4b99f-b19d-4622-9fb6-8badbf0f0a35

It could be an incompatibility between the libgcc's /stdc++ pgRouting is expecting and what is packaged with OpenGeo Suite. pgRouting would be more sensitive since its mostly c++ code.

Option 2: What you could try is the following and you'll want to backup your dlls in the bin and lib just in case this doesn't work

1) download the postgis-pg93-binaries-2.1.3w32gcc48.zip 2) Replace your current libgcc_s_sjlj-1.dll, libstdc++-6.dll in bin folder with the ones in that zip file (make sure to back up your existing because even if this fixes pgRouting, it may break your PostGIS or something else).

Restart your PostgreSQL service.

Option 3:

Use the EnterpriseDb PostgreSQL and Stackbuilder PostGIS. You can backup and restore your OpenGeo data into a new database in this. You just need to make sure when using the package geoserver that you use the new port (or change port of your service)

Hope that helps, Regina

  • Yes, now it worked. Option n.2 did, I don't know whether this could affect my PostGIS, I haven't got any error message yet. I ran a couple of spatial queries and they went fine, my database just contains points at the moment though. Thank you so much again. Alessandro – user3523583 May 18 '14 at 15:45
  • Great. I'm trying to find out from Paul Ramsey (boundlessgeo) PostGIS guy what they compile with. I suspect gcc 4.8.1 but not sure. I will probably upgrade my chain at some point and then hopefully it will be a non-issue moving forward. – LR1234567 May 19 '14 at 1:18

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.