Opened 7 years ago

Closed 7 years ago

Last modified 6 years ago

#160 closed defect (wontfix)

prefix not recognized in 1.4.0SVN

Reported by: kneufeld Owned by: mcayland
Priority: low Milestone: PostGIS 1.4.0
Component: postgis Version: 1.4.X
Keywords: Cc:

Description

Steps to reproduce the problem:

# on centos5.3...
svn checkout http://svn.osgeo.org/postgis/trunk postgis-svn
cd postgis-svn/
./autogen.sh
./configure \
   --prefix=/home/kneufeld/opt/postgis/trunk                            \
   --with-pgconfig=/home/kneufeld/opt/pgsql/8.3/bin/pg_config           \
   --with-geosconfig=/home/kneufeld/opt/geos/3.1.0rc2/bin/geos-config   \
   --with-projdir=/home/kneufeld/opt/proj/4.6.1
make
make install > output
tail -n7 output | head -n3

What do you see?

/bin/sh /home/kneufeld/opt/pgsql/8.3/lib/pgxs/src/makefiles/../../config/install-sh -c -m 644 ./../spatial_ref_sys.sql '/home/kneufeld/opt/pgsql/8.3/share/contrib'
/bin/sh /home/kneufeld/opt/pgsql/8.3/lib/pgxs/src/makefiles/../../config/install-sh -c -m 644 postgis.sql '/home/kneufeld/opt/pgsql/8.3/share/contrib'
/bin/sh /home/kneufeld/opt/pgsql/8.3/lib/pgxs/src/makefiles/../../config/install-sh -c -m 755  libpostgis-1.4.so.0.0 '/home/kneufeld/opt/pgsql/8.3/lib/postgis-1.4.so'

What do you expect to see?

the files installed to /home/kneufeld/opt/postgis/trunk as specified using the --prefix argument

Attachments (3)

blue1.jpg (65.6 KB) - added by Slavon 18 months ago.
crooksandliars.com
Bob Foster.jpg (32.0 KB) - added by Slavon 17 months ago.
Find information about espresso kitchen 53260 on this page
Ron Webb.jpg (167.8 KB) - added by Slavon 16 months ago.
http://kdkraftupwnkitchen.tumblr.com/

Download all attachments as: .zip

Change History (14)

comment:1 Changed 7 years ago by nicklas

I think it works as it should at my mingw-installation, building from the trunk

configure --prefix=/c/postgres84 --with-pgconfig=/c/postgres84/bin/pg_config -with-geosconfig=/c/postgres84/bin/geos-config --with-projdir=/c/proj4
/bin/sh.exe c:/POSTGR~3/lib/pgxs/src/MAKEFI~1/../../config/install-sh -c -m 755  postgis-1.4.dll 'c:/POSTGR~3/lib/postgis-1.4.dll'
/bin/sh.exe c:/POSTGR~3/lib/pgxs/src/MAKEFI~1/../../config/install-sh -c -m 644 ./../spatial_ref_sys.sql 'c:/POSTGR~3/share/contrib'
/bin/sh.exe c:/POSTGR~3/lib/pgxs/src/MAKEFI~1/../../config/install-sh -c -m 644 postgis.sql 'c:/POSTGR~3/share/contrib'

/Nicklas

comment:2 Changed 7 years ago by kneufeld

Hi Nicklas, Your --prefix and --with-pgconfig paramaters are pointing to the same location.

My observation, at least on my centos build, is that a the install doesn't go to anyplace *other* than the --with-pgconfig location.

Cheers, Kevin

comment:3 Changed 7 years ago by pramsey

  • Owner changed from pramsey to mcayland

Yes, it looks like this is another side-effect of using pgxs. Similarly, you can't get debug flags in PostGIS unless you turn on debug in your PostgreSQL install.

comment:4 Changed 7 years ago by mcayland

I'm not convinced that this is necessarily a bug; the new version of configure has NO knowledge of any of the installation paths since this is handled entirely by PGXS, and for a good reason. The location of the sql files in particular has tended to change from version to version.

There may be an argument for extending PGXS so that --prefix specifies a new root directory rather than an a prefix (which is perhaps what Kevin was expecting to see?). But if you're interested in this as a feature, you'd need to chase it up with the PGSQL folks.

ATB,

Mark.

comment:5 Changed 7 years ago by pramsey

  • Resolution set to wontfix
  • Status changed from new to closed

this ain't changing for 1.4

comment:6 Changed 7 years ago by rpriedhorsky

FWIW, this makes PostGIS impossible to install as a non-root user. Thus, we are stuck at 1.3.5 indefinitely and the WONTFIX designation is quite frustrating. What am I to do?

comment:7 Changed 7 years ago by mcayland

I'm not quite sure I understand what you mean. If you install PostgreSQL from packages, then you need either access to the root or postgres user accounts to be able to copy PostGIS into the PostgreSQL lib/ directory. I guess you could manually change all of the paths if you only have database superuser access, but it seems a bit of a long-winded way of going about the whole process.

Note that PGXS does understands DESTDIR, and so if you want to do an out-of-tree build then you can try and go with:

./configure make DESTDIR=/path/to/somewhere install

HTH,

Mark.

comment:8 Changed 7 years ago by rpriedhorsky

Hi Mark,

Installing 1.3.5 in arbitrary directories works fine. This is what we want to keep doing.

We have PostgreSQL installed using the Ubuntu package manager and are chugging along just fine with GEOS in /export/scratch/reid/geos and PostGIS in /export/scratch/reid/postgis-1.3, modulo a tweak to /etc/ld.so.conf (we are allowed to edit config files but not install software outside our "home" directories).

Will DESTDIR do what we want?

It also violates filesystem organization standards (e.g. FHS) to put self-compiled software under /usr. If we did have root, I'd still want to install under /usr/local, which does not appear to be supported.

Thanks,

Reid

comment:9 Changed 7 years ago by kneufeld

Hi Mark,

You mentioned that PGXS understands DESTDIR and this apparently works: ./configure make DESTDIR=/path/to/somewhere install

If so, is it possible to alter configure so that the first thing it does is take any specified --prefix value and assign it to DESTDIR? Then --prefix would work again as before, no?

-- Kevin

comment:10 Changed 7 years ago by mcayland

Not quite because DESTDIR is used for packaging and still contains the root prefix. Having said that though, I think it should be possible to re-work the new regress test changes in 1.5 to accomodate this... I'll take a look when I get a moment.

comment:11 Changed 6 years ago by rpriedhorsky

  • Version set to 1.4.X

Mark, DESTDIR only sort of works. I tried (with 1.4.1):

$ PATH=/usr/lib/postgresql/8.2/bin:/export/scratch/reid/geos/bin:$PATH ./configure --prefix=/export/scratch/reid/postgis-1.4/ --with-geos=/export/scratch/reid/geos/bin/geos-config --with-pgsql=/usr/lib/postgresql/8.2/bin/pg_config DESTDIR=/export/scratch/reid/postgis-1.4

$ make DESTDIR=/export/scratch/reid/postgis-1.4

$ make install DESTDIR=/export/scratch/reid/postgis-1.4

The install indeed writes to /export/scratch/reid/postgis-1.4, but it then also includes a bunch of unwanted additional directories below that. I haven't yet tested it, but I assume I can clean up the junk with some additional scripting.

Is the situation any different in 1.5? I didn't see anything in the release notes.

Can you please reopen this bug and boost the priority? This is non-standard configure behavior, and a regression.

Changed 18 months ago by Slavon

Changed 17 months ago by Slavon

Find information about espresso kitchen 53260 on this page

Note: See TracTickets for help on using tickets.