[GIS] Can’t load pgrouting extension, could not load library librouting_dd.ddl error 998 windows

pgroutingpostgis

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?

Best Answer

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

Related Question