Re: How to include Tablefunc as an extension

From: Stefan Schwarzer <stefan(dot)schwarzer(at)unep(dot)org>
To: pgsql-general(at)postgresql(dot)org
Subject: Re: How to include Tablefunc as an extension
Date: 2012-06-21 06:12:12
Message-ID: 62B90991-B238-41A6-889F-BFF1360424DF@unep.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

>>>> I read through the Postgres doc and many Google results, but it seems
>>>> still unclear to me how to include additional packages into my postgres
>>>> database. I see that there are a few installed under
>>>> "/usr/local/pgsql-9.1/share/extension/" (I am on Lion and installed the
>>>> Kyngchaos libs). But as I want to install crosstab now, I downloaded the
>>>> source code for postgres, run a make/install - and now wonder what to do
>>>> with it. I could eventually load the .sql file as usual; but it seems this
>>>> should be now avoided, and loaded as an extension. I tried to copy three
>>>> files (--1.0.sql, --unpackaged.sql and the normal .sql) to the folder and
>>>> then load it from PgAdmin, but this results in an error message ("could
>>>> not access file "$libdir/tablefunc"").
>>>
>>> This should do the trick:
>>>
>>> CREATE EXTENSION crosstab;
>>
>> Thanks a lot. Yes, that's the command I used when it launches the above error message. The question is more about: "where do I need to place the tablefunc files (and which ones) in order to execute successfully that command"?
>
> make install should copy files including $libdir/tablefunc. If not,
> you should take a look at the output of the make command. Make sure
> your PATH points to pg_config that your database is running with.

I do as indicated in Kyngchaos ReadMe file:

export PATH="/usr/local/pgsql-9.1/bin:$PATH"
export USE_PGXS=1
make
sudo make install

Problem is that when I run the install, it shows this:

Makefile:19: ../../src/Makefile.global: No such file or directory
Makefile:20: /contrib/contrib-global.mk: No such file or directory
make: *** No rule to make target `/contrib/contrib-global.mk'. Stop.

And this, after looking around, seem to indicate that I need to configure the Postgres source code. But there, with:

./configure --with-openssl --with-pam --with-krb5 --with-gssapi --with-ldap --enable-thread-safety --with-bonjour --with-python --without-perl --enable-nls --with-libxml CFLAGS=-Os x86_64 LD=gcc LDLFAGS=-arch x86_64

I run into another problem:

configure: WARNING: you should use --build, --host, --target
configure: WARNING: you should use --build, --host, --target
checking build system type... x86_64-pc-none
checking host system type... x86_64-pc-none
checking which template to use... configure: error:
*******************************************************************
PostgreSQL has apparently not been ported to your platform yet.

Thanks for any hints how to solve that riddle!

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Tom Lane 2012-06-21 07:19:26 Re: How to include Tablefunc as an extension
Previous Message P. Broennimann 2012-06-21 05:49:16 Output of query_to_xml