Thread: can't build contrib/uuid-ossp
Dear PostgreSQL bug-squasher-team, I was trying to build postgresql-9.0.2 with the following ./configure: $ ./configure --enable-cassert --enable-debug --with-python --with-ossp-uuid and got the following message: checking uuid.h presence... yes configure: WARNING: uuid.h: present but cannot be compiled configure: WARNING: uuid.h: check for missing prerequisite headers? configure: WARNING: uuid.h: see the Autoconf documentation configure: WARNING: uuid.h: section "Present But Cannot Be Compiled" configure: WARNING: uuid.h: proceeding with the preprocessor's result configure: WARNING: uuid.h: in the future, the compiler will take precedence configure: WARNING: ## ---------------------------------------- ## configure: WARNING: ## Report this to pgsql-bugs@postgresql.org ## configure: WARNING: ## ---------------------------------------- ## checking for uuid.h... yes I've downloaded and installed the requisite ossp-uuid library: ftp ftp://ftp.ossp.org/pkg/lib/uuid/uuid-1.6.2.tar.gz which builds fine (I didn't use the ./configure --with-pgsql option for ins= talling uuid-1.6.2 as it throws an error too).=20 Sadly, I got this to install yesterday, but in a ridiculously stupid brain = lapse, I didn't document it.=20 I'm nor trying to recreate the postgresql-9.0.2 install from scratch and ge= t stuck here. Help? Respectfully, Jeff. Jeff Hamann, PhD PO Box 1421 Corvallis, Oregon 97339-1421 541-754-2457 jeff.hamann[at]forestinformatics[dot]com http://www.forestinformatics.com http://forufus.blogspot.com/
On Wed, Feb 16, 2011 at 1:10 PM, Jeff Hamann <jeff.hamann@forestinformatics.com> wrote: > Dear PostgreSQL bug-squasher-team, > I was trying to build postgresql-9.0.2 with the following ./configure: > $ ./configure --enable-cassert --enable-debug --with-python --with-ossp-u= uid > and got the following message: > checking uuid.h presence... yes > configure: WARNING: uuid.h: present but cannot be compiled > configure: WARNING: uuid.h: =A0 =A0 check for missing prerequisite header= s? > configure: WARNING: uuid.h: see the Autoconf documentation > configure: WARNING: uuid.h: =A0 =A0 section "Present But Cannot Be Compil= ed" > configure: WARNING: uuid.h: proceeding with the preprocessor's result > configure: WARNING: uuid.h: in the future, the compiler will take precede= nce > configure: WARNING: =A0 =A0 ## ---------------------------------------- ## > configure: WARNING: =A0 =A0 ## Report this to pgsql-bugs@postgresql.org ## > configure: WARNING: =A0 =A0 ## ---------------------------------------- ## > checking for uuid.h... yes Hmm. What platform is this on? And what's in config.log? --=20 Robert Haas EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company
On Thu, Mar 3, 2011 at 11:16 AM, Jeff Hamann <jeff.d.hamann@gmail.com> wrote: > I've attached the config.log file. It looks like the trouble is here: In file included from conftest.c:92: /usr/local/include/uuid.h:94: error: conflicting types for 'uuid_t' /usr/include/unistd.h:133: error: previous declaration of 'uuid_t' was here So the problem is, apparently, that Darwin defines its own version of uuid_t that clashes with the one provided by uuid-ossp. There are some #ifdefs around that bit of stuff on my machine, so it might be possible to #define your way out of the problem. If you figure out how to get it working, I think we'd be happy to accept a patch that fixes it, unless it's only failing due to some funky detail of your configuration, which I suspect isn't the case based on a quick look at my system. -- Robert Haas EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company
Robert Haas <robertmhaas@gmail.com> writes: > On Thu, Mar 3, 2011 at 11:16 AM, Jeff Hamann <jeff.d.hamann@gmail.com> wrote: >> I've attached the config.log file. > It looks like the trouble is here: > In file included from conftest.c:92: > /usr/local/include/uuid.h:94: error: conflicting types for 'uuid_t' > /usr/include/unistd.h:133: error: previous declaration of 'uuid_t' was here > So the problem is, apparently, that Darwin defines its own version of > uuid_t that clashes with the one provided by uuid-ossp. There are > some #ifdefs around that bit of stuff on my machine, so it might be > possible to #define your way out of the problem. > If you figure out how to get it working, I think we'd be happy to > accept a patch that fixes it, unless it's only failing due to some > funky detail of your configuration, which I suspect isn't the case > based on a quick look at my system. On my Mac with uuid-ossp 1.6.2 installed in /usr/local, configure whines as shown above but the build goes through just fine, which probably is because uuid-ossp.c doesn't try to include <unistd.h>. So the conflict noted by configure doesn't really affect us AFAICS. I would say that if there's anything to be done about it, it's the uuid-ossp folks' problem to solve not ours. regards, tom lane