[postgis-users] shp2pgsql problems on Mac OS X Leopard
John Cartwright
john.c.cartwright at comcast.net
Wed Dec 5 20:35:57 PST 2007
Hi Patrick,
I think I ran into the same problem, but didn't realize what the
underlying issue was. Just found that shp2pgsql kept complaining
about the inability to open valid shapefiles.
--john
On Dec 5, 2007, at 9:32 AM, Patrick Hartling wrote:
> I have run into a rather perplexing problem with shp2pgsql from
> PostGIS 1.3.1 and 1.3.2 on Mac OS X Leopard. As far as I can tell,
> the optarg and optind variables declared in ParseCmdline() of loader/
> shp2pgsql.c are being linked to the globals declared in unistd.h
> rather than those in loader/getopt.h. The result is that references
> to these variables in ParseCmdline() give the wrong values.
> Specifically, optarg is always NULL, and optind is 0 until the loop
> in lines 1363 through 1377.
>
> Looking at the output from the preprocessor, optarg, optind, opterr,
> and optopt are all declared twice. The first is from unistd.h, and
> the second is from PostGIS' loader/getopt.h. If I remove the
> #include directive for unistd.h, shp2pgsql compiles, links, and runs
> correctly, although there is a compiler warning saying that getopt()
> is not declared.
>
> My guess is that there is some compiler or linker option that might
> fix this behavior, but I have not been able to determine what that
> might be. Removing the inclusion of unistd.h does not seem like the
> best fix, but it is a workaround that gets things running for me.
>
> -Patrick
>
>
> --
> Patrick L. Hartling
> Senior Software Engineer, Priority 5
> http://www.priority5.com/
>
> _______________________________________________
> postgis-users mailing list
> postgis-users at postgis.refractions.net
> http://postgis.refractions.net/mailman/listinfo/postgis-users
More information about the postgis-users
mailing list