Skip Menu |

This queue is for tickets about the Data-UUID-LibUUID CPAN distribution.

Report information
The Basics
Id: 62115
Status: open
Priority: 0/
Queue: Data-UUID-LibUUID

People
Owner: ether [...] cpan.org
Requestors: ROKR [...] cpan.org
Cc: PHILIPP [...] cpan.org
AdminCc:

Bug Information
Severity: (no value)
Broken in: (no value)
Fixed in: (no value)



Subject: Won't compile on Mac OS X 10.6
perl Makefile.PL generates this: Writing Makefile for Data::UUID::LibUUID trying gcc-4.2 -c -arch x86_64 -arch i386 -arch ppc -g -pipe -fno-common -DPERL_DARWIN -fno-strict-aliasing -I/usr/local/include -o /dev/null hdr_check.h lipo: can't figure out the architecture type of: /var/folders/bx/bx4Vk2InGxWG27mQmdvei++++TI/-Tmp-//ccrOrQn4.out *** ERROR: <uuid/uuid.h> seems to be missing *** please install libuuid from e2fsprogs (available as uuid-dev on debian) --- Changing it/adding hdr_check.c passes the above check. However, compiling with tests has it failing some tests, including duplicate UUID generation tests: cp lib/Data/UUID/LibUUID.pm blib/lib/Data/UUID/LibUUID.pm cp lib/Data/UUID/LibUUID/DataUUIDCompat.pm blib/lib/Data/UUID/LibUUID/DataUUIDCompat.pm /usr/bin/perl /Users/rob/perl5/lib/perl5/ExtUtils/xsubpp -typemap /System/Library/Perl/5.10.0/ExtUtils/typemap LibUUID.xs > LibUUID.xsc && mv LibUUID.xsc LibUUID.c gcc-4.2 -c -arch x86_64 -arch i386 -arch ppc -g -pipe -fno-common -DPERL_DARWIN -fno-strict-aliasing -I/usr/local/include -Os -DVERSION=\"0.05\" -DXS_VERSION=\"0.05\" "-I/System/Library/Perl/5.10.0/darwin-thread-multi-2level/CORE" LibUUID.c LibUUID.xs: In function ‘hex_to_uuid’: LibUUID.xs:85: warning: format not a string literal and no format arguments LibUUID.xs: In function ‘hex_to_uuid’: LibUUID.xs:85: warning: format not a string literal and no format arguments LibUUID.xs: In function ‘hex_to_uuid’: LibUUID.xs:85: warning: format not a string literal and no format arguments Running Mkbootstrap for Data::UUID::LibUUID () chmod 644 LibUUID.bs rm -f blib/arch/auto/Data/UUID/LibUUID/LibUUID.bundle gcc-4.2 -mmacosx-version-min=10.6.3 -arch x86_64 -arch i386 -arch ppc -bundle -undefined dynamic_lookup -L/usr/local/lib LibUUID.o -o blib/arch/auto/Data/UUID/LibUUID/LibUUID.bundle \ -luuid \ ld: warning: in /usr/local/lib/libuuid.a, file was built for unsupported file format which is not the architecture being linked (i386) ld: warning: in /usr/local/lib/libuuid.a, file was built for unsupported file format which is not the architecture being linked (ppc) chmod 755 blib/arch/auto/Data/UUID/LibUUID/LibUUID.bundle cp LibUUID.bs blib/arch/auto/Data/UUID/LibUUID/LibUUID.bs chmod 644 blib/arch/auto/Data/UUID/LibUUID/LibUUID.bs PERL_DL_NONLAZY=1 /usr/bin/perl "-MExtUtils::Command::MM" "-e" "test_harness(0, 'blib/lib', 'blib/arch')" t/*.t BA48F8C4-D745-11DF-A7EC-C8BCC88C0FC2 at t/basic.t line 33. BA48FFFE-D745-11DF-A7EC-C8BCC88C0FC2 at t/basic.t line 34. # Failed test 'compare two diff UUIDs' # at t/basic.t line 37. # got: '0' # expected: anything else # Failed test 'uuid_eq false' # at t/basic.t line 41. # got: '1' # expected: '' # Failed test 'uuid_eq on strings' # at t/basic.t line 43. # Failed test 'uuid_eq on string and bin' # at t/basic.t line 44. # Failed test 'uuid_eq on stringifying object' # at t/basic.t line 64. # Looks like you failed 5 tests of 47. t/basic.t ... Dubious, test returned 5 (wstat 1280, 0x500) Failed 5/47 subtests t/compat.t .. ok t/fork.t .... ok Test Summary Report ------------------- t/basic.t (Wstat: 1280 Tests: 47 Failed: 5) Failed tests: 13, 16, 18-19, 23 Non-zero exit status: 5 Files=3, Tests=106, 0 wallclock secs ( 0.04 usr 0.01 sys + 0.14 cusr 0.05 csys = 0.24 CPU) Result: FAIL Failed 1/3 test programs. 5/106 subtests failed. make: *** [test_dynamic] Error 255 --- Any thoughts? Thanks
I had another uuid library installed, ossp-uuid, the removing of which fixed the broken tests However, the Makefile.PL still needs the 'hdr_check.c' fix to pass the compiling check
On Wed Oct 13 23:54:24 2010, ROKR wrote: Show quoted text
> I had another uuid library installed, ossp-uuid, the removing of which > fixed the broken tests > > However, the Makefile.PL still needs the 'hdr_check.c' fix to pass the > compiling check
Also fails under Mac OS X 10.8.2: % perl Makefile.PL Checking if your kit is complete... Looks good Note (probably harmless): No library found for -luuid Writing Makefile for Data::UUID::LibUUID trying clang -c -arch i386 -arch x86_64 -g -pipe -fno-common -DPERL_DARWIN -fno-strict-aliasing -fstack-protector -I/usr/local/include -o /dev/null hdr_check.h clang: error: cannot use 'precompiled-header' output with multiple -arch options *** ERROR: <uuid/uuid.h> seems to be missing *** please install libuuid from e2fsprogs (available as uuid-dev on debian) % Also, the library required is CoreFoundation.
Compilation succeeds here (10.6), but I get the failed tests below. More complete output is attached in plaintext format. # Failed test 'compare two diff UUIDs' # at t/basic.t line 34. # got: '0' # expected: anything else # Failed test 'uuid_eq false' # at t/basic.t line 38. # got: '1' # expected: '' # Failed test 'uuid_eq on strings' # at t/basic.t line 40. # Failed test 'uuid_eq on string and bin' # at t/basic.t line 41. # Failed test 'uuid_eq on stringifying object' # at t/basic.t line 61.
Subject: failed-test-output.txt
Building and testing Data-UUID-LibUUID-0.05 cp lib/Data/UUID/LibUUID.pm blib/lib/Data/UUID/LibUUID.pm cp lib/Data/UUID/LibUUID/DataUUIDCompat.pm blib/lib/Data/UUID/LibUUID/DataUUIDCompat.pm /Users/jjl/perl5/perlbrew/perls/perl-5.16.1/bin/perl /Users/jjl/perl5/perlbrew/perls/perl-5.16.1/lib/5.16.1/ExtUtils/xsubpp -typemap /Users/jjl/perl5/perlbrew/perls/perl-5.16.1/lib/5.16.1/ExtUtils/typemap LibUUID.x s > LibUUID.xsc && mv LibUUID.xsc LibUUID.c cc -c -fno-common -DPERL_DARWIN -fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include -O3 -D VERSION=\"0.05\" -DXS_VERSION=\"0.05\" "-I/Users/jjl/perl5/perlbrew/perls/perl-5.16.1/lib/5.16.1/darwin-2le vel/CORE" LibUUID.c Running Mkbootstrap for Data::UUID::LibUUID () chmod 644 LibUUID.bs rm -f blib/arch/auto/Data/UUID/LibUUID/LibUUID.bundle env MACOSX_DEPLOYMENT_TARGET=10.3 cc -bundle -undefined dynamic_lookup -L/usr/local/lib -fstack-protector LibUUID.o -o blib/arch/auto/Data/UUID/LibUUID/LibUUID.bundle \ -luuid \ chmod 755 blib/arch/auto/Data/UUID/LibUUID/LibUUID.bundle cp LibUUID.bs blib/arch/auto/Data/UUID/LibUUID/LibUUID.bs chmod 644 blib/arch/auto/Data/UUID/LibUUID/LibUUID.bs Manifying blib/man3/Data::UUID::LibUUID.3 Manifying blib/man3/Data::UUID::LibUUID::DataUUIDCompat.3 PERL_DL_NONLAZY=1 /Users/jjl/perl5/perlbrew/perls/perl-5.16.1/bin/perl "-MExtUtils::Command::MM" "-e" "test_ harness(0, 'blib/lib', 'blib/arch')" t/*.t # Failed test 'compare two diff UUIDs' # at t/basic.t line 34. # got: '0' # expected: anything else # Failed test 'uuid_eq false' # at t/basic.t line 38. # got: '1' # expected: '' # Failed test 'uuid_eq on strings' # at t/basic.t line 40. # Failed test 'uuid_eq on string and bin' # at t/basic.t line 41. # Failed test 'uuid_eq on stringifying object' # at t/basic.t line 61. # Looks like you failed 5 tests of 47. t/basic.t ... Dubious, test returned 5 (wstat 1280, 0x500) Failed 5/47 subtests t/compat.t .. ok t/fork.t .... ok Test Summary Report ------------------- t/basic.t (Wstat: 1280 Tests: 47 Failed: 5) Failed tests: 13, 16, 18-19, 23 Non-zero exit status: 5 Files=3, Tests=106, 0 wallclock secs ( 0.04 usr 0.01 sys + 0.15 cusr 0.05 csys = 0.25 CPU) Result: FAIL Failed 1/3 test programs. 5/106 subtests failed. make: *** [test_dynamic] Error 255
Having done some more digging, I've found that I too have ossp-uuid installed. It appears that when I installed postgresql through homebrew, it dragged it in. The fix appears to be as follows: brew remove postgresql brew remove ossp-uuid brew install postgresql --without-ossp-uuid I note that there are two other homebrew packages that require the ossp-uuid package and there doesn't appear to be a way to disable it for them: 'gearman' and 'io'. I will file a bug against homebrew and see what gets said.
On Wed Nov 14 19:57:33 2012, ELPENGUIN wrote: Show quoted text
> I note that there are two other homebrew packages that require the > ossp-uuid package and there doesn't appear to be a way to disable it for > them: 'gearman' and 'io'. I will file a bug against homebrew and see > what gets said. >
I've submitted a pull request against homebrew that enables the --without-ossp-uuid flag on 'io' and 'gearman' as well, but don't know if that's the solution that will (or even should) ultimately stick. https://github.com/mxcl/homebrew/pull/16079 Here's the homebrew bug report for those interested in tracking it https://github.com/mxcl/homebrew/issues/16077
Homebrew have made the ossp-uuid formula keg-only. If you already have this issue, the following should fix it: brew unlink ossp-uuid Anyone who installs postgresql, gearman or io through homebrew in the future and has done a 'brew update' should not suffer from this problem any more, so I'd suggest this can be closed.
Following the home-brew advice above, it very nearly installs on OS X 10.10. It fails one test in basic.t: is( uuid_to_binary(bless {}, "Blah"), undef, "to_binary(obj)" );
Following the home-brew advice above, it very nearly installs on OS X 10.10. It fails one test in basic.t: is( uuid_to_binary(bless {}, "Blah"), undef, "to_binary(obj)" );
On 2015-06-22 07:08:52, DEMIAN wrote: Show quoted text
> Following the home-brew advice above, it very nearly installs on OS X > 10.10. It fails one test in basic.t: > > is( uuid_to_binary(bless {}, "Blah"), undef, "to_binary(obj)" );
I can reproduce this issue, but I didn't do anything special in macports or homebrew (I don't even have homebrew installed). Presumably I already have the necessary libraries installed. If anyone can propose a fix, I'll happily apply/release it -- otherwise, I'll investigate as time permits.
On 2015-06-22 20:31:25, ETHER wrote: Show quoted text
> On 2015-06-22 07:08:52, DEMIAN wrote:
> > Following the home-brew advice above, it very nearly installs on OS X > > 10.10. It fails one test in basic.t: > > > > is( uuid_to_binary(bless {}, "Blah"), undef, "to_binary(obj)" );
> > > I can reproduce this issue, but I didn't do anything special in > macports or homebrew (I don't even have homebrew installed). > Presumably I already have the necessary libraries installed. > > If anyone can propose a fix, I'll happily apply/release it -- > otherwise, I'll investigate as time permits.
The test failure in basic.t happens also on non-Mac systems, and has already its own ticket: https://rt.cpan.org/Public/Bug/Display.html?id=119469 The compilation problems mentioned in this ticket does not seem to happen anymore with modern Mac OS X (just tried with 10.14), so I think this ticket may be closed.