Hi,
I'm on OS X 10.1.5 with perl 5.6.1, and the 'make test' fails before any tests are run. I have the latest Developer Tools installed (how to check the exact version?) Here's the test output:
[pe-242:~/.cpan/build/Mac-Carbon-0.01] ken% perl Makefile.PL
Checking if your kit is complete...
Looks good
Writing Makefile for Mac::Components
Writing Makefile for Mac::Files
Writing Makefile for Mac::Gestalt
Writing Makefile for MacPerl
Writing Makefile for Mac::Memory
Writing Makefile for Mac::MoreFiles
Writing Makefile for Mac::Notification
Writing Makefile for Mac::Processes
Writing Makefile for Mac::Resources
Writing Makefile for Mac::Sound
Writing Makefile for Mac::Speech
Writing Makefile for Mac::Types
Writing Makefile for Mac::Carbon
[pe-242:~/.cpan/build/Mac-Carbon-0.01] ken% make test
cp Carbon.pm blib/lib/Mac/Carbon.pm
cp Components.pm ../blib/lib/Mac/Components.pm
cc -c -I/Developer/Headers/FlatCarbon/ -pipe -fno-common -DHAS_TELLDIR_PROTOTYPE -fno-strict-aliasing -O3 -DVERSION=\"1.01\" -DXS_VERSION=\"1.01\" -I/System/Library/Perl/darwin/CORE Components.c
/Developer/Headers/FlatCarbon//Events.h:1: warning: could not use precompiled header '/System/Library/Frameworks/Carbon.framework/Headers/Carbon.p', because:
/Developer/Headers/FlatCarbon//Events.h:1: warning: 'CarbonSound/CarbonSound.h' has different date than in precomp
/Developer/Headers/FlatCarbon//Events.h:1: warning: 'CarbonSound/Sound.h' has different date than in precomp
/Developer/Headers/FlatCarbon//Events.h:1: warning: 'OpenScripting/OpenScripting.h' has different date than in precomp
/Developer/Headers/FlatCarbon//Events.h:1: warning: 'OpenScripting/OSA.h' has different date than in precomp
/Developer/Headers/FlatCarbon//Events.h:1: warning: and others...
/System/Library/Frameworks/Carbon.framework/Headers/Carbon.h:20: warning: could not use precompiled header '/System/Library/Frameworks/CoreServices.framework/Headers/CoreServices.p', because:
/System/Library/Frameworks/Carbon.framework/Headers/Carbon.h:20: warning: macro 'bool' defined by /System/Library/Perl/darwin/CORE/handy.h conflicts with precomp
/System/Library/Frameworks/Carbon.framework/Headers/Carbon.h:24: warning: could not use precompiled header '/System/Library/Frameworks/ApplicationServices.framework/Headers/ApplicationServices.p', because:
/System/Library/Frameworks/Carbon.framework/Headers/Carbon.h:24: warning: macro 'bool' defined by /System/Library/Perl/darwin/CORE/handy.h conflicts with precomp
../Carbon.h:168: illegal statement, missing `;' after `Str255'
cpp-precomp: warning: errors during smart preprocessing, retrying in basic mode
In file included from /System/Library/Frameworks/CoreFoundation.framework/Headers/CFBase.h:28,
from /System/Library/Frameworks/CoreFoundation.framework/Headers/CoreFoundation.h:5,
from /System/Library/Frameworks/CoreServices.framework/Frameworks/CarbonCore.framework/Headers/CarbonCore.h:20,
from /System/Library/Frameworks/CoreServices.framework/Headers/CoreServices.h:21,
from /System/Library/Frameworks/Carbon.framework/Headers/Carbon.h:20,
from /Developer/Headers/FlatCarbon//Events.h:2,
from ../Carbon.h:23,
from Components.xs:32:
/usr/include/stdbool.h:10: warning: useless keyword or type name in empty declaration
/usr/include/stdbool.h:10: warning: empty declaration
In file included from Components.xs:32:
../Carbon.h: In function `GUSIPath2FSp':
../Carbon.h:168: parse error before `path'
../Carbon.h:169: `path' undeclared (first use in this function)
../Carbon.h:169: (Each undeclared identifier is reported only once
../Carbon.h:169: for each function it appears in.)
make[1]: *** [Components.o] Error 1
make: *** [subdirs] Error 2
[pe-242:~/.cpan/build/Mac-Carbon-0.01] ken%
Summary of my perl5 (revision 5.0 version 6 subversion 1) configuration:
Platform:
osname=darwin, osvers=5.5, archname=darwin
uname='darwin pe-242.pc.ee.usyd.edu.au 5.5 darwin kernel version 5.5: thu may 30 14:51:26 pdt 2002; root:xnuxnu-201.42.3.obj~1release_ppc power macintosh powerpc '
config_args='-des -Dfirstmakefile=GNUmakefile -Dldflags=-flat_namespace'
hint=recommended, useposix=true, d_sigaction=define
usethreads=undef use5005threads=undef useithreads=undef usemultiplicity=undef
useperlio=undef d_sfio=undef uselargefiles=define usesocks=undef
use64bitint=undef use64bitall=undef uselongdouble=undef
Compiler:
cc='cc', ccflags ='-pipe -fno-common -DHAS_TELLDIR_PROTOTYPE -fno-strict-aliasing',
optimize='-O3',
cppflags='-pipe -fno-common -DHAS_TELLDIR_PROTOTYPE -fno-strict-aliasing'
ccversion='', gccversion='Apple devkit-based CPP 6.02', gccosandvers=''
intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=4321
d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=8
ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=8
alignbytes=8, usemymalloc=n, prototype=define
Linker and Libraries:
ld='cc', ldflags ='-flat_namespace'
libpth=/usr/lib
libs=-lm -lc
perllibs=-lm -lc
libc=/System/Library/Frameworks/System.framework/System, so=dylib, useshrplib=true, libperl=libperl.dylib
Dynamic Linking:
dlsrc=dl_dyld.xs, dlext=bundle, d_dlsymun=undef, ccdlflags=' '
cccdlflags=' ', lddlflags='-flat_namespace -bundle -undefined suppress'
Characteristics of this binary (from libperl):
Compile-time options: USE_LARGE_FILES
Built under darwin
Compiled at 07/02/02 16:04:14
%ENV:
PERL5LIB="/sw/lib/perl5"
@INC:
/sw/lib/perl5/darwin
/sw/lib/perl5
/System/Library/Perl/darwin
/System/Library/Perl
/Library/Perl/darwin
/Library/Perl
/Library/Perl
/Network/Library/Perl/darwin
/Network/Library/Perl
/Network/Library/Perl
.
Logged In: YES
user_id=3660
Weird. I have only tested with Mac OS X 10.2.x, the stock
perl 5.6.0, and the latest developer tools for Jaguar, but
it looks to me like something is up with your developer
tools. Reading the errors, your precompiled headers have
different dates than your actual headers. I don't know what
could be done about that.
I'm sorry, but I really don't know what the problem is, and
I don't know a way to debug it. If anyone does find out
what the problem is, or how to correct it, please follow up
here.
Logged In: YES
user_id=3660
Try `sudo fixPrecomps`. Maybe use the -force option. (From
Doug on #macdev; the problem is apparently not uncommon, so
perhaps Google can help if this doesn't.)
Logged In: YES
user_id=65772
Thanks for the tip about fixing precomps! I wondered how to do that.
However, it doesn't fix the problem, even when I -force. This seems to be a genuine header conflict, or maybe a preprocessing error.
Logged In: YES
user_id=3660
Same errors, or slightly different? If different, please
provide them. Hrm.
Logged In: YES
user_id=65772
Some errors are the same, some are missing. Here's the complete output now of 'make', after `sudo fixPrecomps -force`:
[pe-242:~/.cpan/build/Mac-Carbon-0.01] ken% make
cp Carbon.pm blib/lib/Mac/Carbon.pm
cp Components.pm ../blib/lib/Mac/Components.pm
cc -c -I/Developer/Headers/FlatCarbon/ -pipe -fno-common -DHAS_TELLDIR_PROTOTYPE -fno-strict-aliasing -O3 -DVERSION=\"1.01\" -DXS_VERSION=\"1.01\" -I/System/Library/Perl/darwin/CORE Components.c
/Developer/Headers/FlatCarbon//Events.h:1: warning: could not use precompiled header '/System/Library/Frameworks/Carbon.framework/Headers/Carbon.p', because:
/Developer/Headers/FlatCarbon//Events.h:1: warning: macro 'bool' defined by /System/Library/Perl/darwin/CORE/handy.h conflicts with precomp
/System/Library/Frameworks/Carbon.framework/Headers/Carbon.h:20: warning: could not use precompiled header '/System/Library/Frameworks/CoreServices.framework/Headers/CoreServices.p', because:
/System/Library/Frameworks/Carbon.framework/Headers/Carbon.h:20: warning: macro 'bool' defined by /System/Library/Perl/darwin/CORE/handy.h conflicts with precomp
/System/Library/Frameworks/Carbon.framework/Headers/Carbon.h:24: warning: could not use precompiled header '/System/Library/Frameworks/ApplicationServices.framework/Headers/ApplicationServices.p', because:
/System/Library/Frameworks/Carbon.framework/Headers/Carbon.h:24: warning: macro 'bool' defined by /System/Library/Perl/darwin/CORE/handy.h conflicts with precomp
../Carbon.h:168: illegal statement, missing `;' after `Str255'
cpp-precomp: warning: errors during smart preprocessing, retrying in basic mode
In file included from /System/Library/Frameworks/CoreFoundation.framework/Headers/CFBase.h:28,
from /System/Library/Frameworks/CoreFoundation.framework/Headers/CoreFoundation.h:5,
from /System/Library/Frameworks/CoreServices.framework/Frameworks/CarbonCore.framework/Headers/CarbonCore.h:20,
from /System/Library/Frameworks/CoreServices.framework/Headers/CoreServices.h:21,
from /System/Library/Frameworks/Carbon.framework/Headers/Carbon.h:20,
from /Developer/Headers/FlatCarbon//Events.h:2,
from ../Carbon.h:23,
from Components.xs:32:
/usr/include/stdbool.h:10: warning: useless keyword or type name in empty declaration
/usr/include/stdbool.h:10: warning: empty declaration
In file included from Components.xs:32:
../Carbon.h: In function `GUSIPath2FSp':
../Carbon.h:168: parse error before `path'
../Carbon.h:169: `path' undeclared (first use in this function)
../Carbon.h:169: (Each undeclared identifier is reported only once
../Carbon.h:169: for each function it appears in.)
make[1]: *** [Components.o] Error 1
make: *** [subdirs] Error 2
[pe-242:~/.cpan/build/Mac-Carbon-0.01] ken%
Logged In: YES
user_id=3660
This should be all better now.
Logged In: NO
Hi !
I had the same troubles. There where all solve using the
`sudo fixPrecomps` command.
Thanks for the help