Conflicting uuid_t types error building apr
Hi all, I'm getting the following error when attempting to build devel/apr:
In file included from misc/unix/rand.c:39: /opt/local/include/uuid.h:94: error: conflicting types for 'uuid_t' /usr/include/unistd.h:133: error: previous declaration of 'uuid_t' was here make[1]: *** [misc/unix/rand.lo] Error 1
which doesn't make any sense to me, given the following snippets of the appropriate files: /opt/local/include/uuid.h
/* workaround conflicts with system headers */ #define uuid_t __vendor_uuid_t #define uuid_create __vendor_uuid_create #define uuid_compare __vendor_uuid_compare #include <sys/types.h> #include <unistd.h> #undef uuid_t #undef uuid_create #undef uuid_compare
/usr/include/unistd.h
#if !defined(_POSIX_C_SOURCE) || defined(_DARWIN_C_SOURCE) #ifndef _UUID_T #define _UUID_T typedef __darwin_uuid_t uuid_t; #endif /* _UUID_T */ #endif /* (_POSIX_C_SOURCE && !_DARWIN_C_SOURCE) */
Having done some rooting around I've found pointers to making sure that apr's portfile has been updated for Macports 1.6 (it has been), and mentions of the name of gcc changing, so I've also tried this:
sudo port install configure.cc=gcc configure.cxx=g++ apr
I've also forcibly 'port uninstall'ed everything, but haven't gone so far as to zap /opt - this is an up-to-date 10.5.1 system with the dev tools installed. Any pointers as to what I should be doing here would be great. Thanks in advance, John -- John O'Shea Wordbank Limited 33 Charlotte Street, London W1T 1RR Direct line: +44 (0) 20 7903 8829 Fax: +44 (0) 20 7903 8888 <http://www.wordbank.com/>
On Feb 5, 2008, at 5:05 PM, John O'Shea wrote:
I'm getting the following error when attempting to build devel/apr:
In file included from misc/unix/rand.c:39: /opt/local/include/uuid.h:94: error: conflicting types for 'uuid_t' /usr/include/unistd.h:133: error: previous declaration of 'uuid_t' was here make[1]: *** [misc/unix/rand.lo] Error 1
which doesn't make any sense to me, given the following snippets of the appropriate files:
/opt/local/include/uuid.h
what does port provides /opt/local/include/uuid.h say? I don't have that file, and thus don't see that error when building apr. You could probably deactivate or uninstall the port that provides that to get apr to build, but if I can find out what port is conflicting, I may be able to patch apr (or the portfile) to fix it as well ... -- Daniel J. Luke +========================================================+ | *---------------- dluke@geeklair.net ----------------* | | *-------------- http://www.geeklair.net -------------* | +========================================================+ | Opinions expressed are mine and do not necessarily | | reflect the opinions of my employer. | +========================================================+
Daniel J. Luke wrote:
what does
port provides /opt/local/include/uuid.h
say?
/opt/local/include/uuid.h is provided by: ossp-uuid
which got installed as part of the postgresql83 install.
I don't have that file, and thus don't see that error when building apr.
You could probably deactivate or uninstall the port that provides that to get apr to build, but if I can find out what port is conflicting, I may be able to patch apr (or the portfile) to fix it as well ...
OK, uninstalling postgresql83, then ossp-uuid and then installing apr works ok. I can then proceed to install postgresql83 again (and hence ossp-uuid) with no errors, so all is good for me :-) Cheers for the speedy response, John -- John O'Shea Wordbank Limited 33 Charlotte Street, London W1T 1RR Direct line: +44 (0) 20 7903 8829 Fax: +44 (0) 20 7903 8888 <http://www.wordbank.com/>
participants (2)
-
Daniel J. Luke
-
John O'Shea