I'm running into some problems compiling Perl 5.10.1 on a clean
install of OS X 10.7 (Darwin 11), Xcode 4.1 (though the problem is
affecting any version of perl I try to build).
Configure -d does not find the prototypes for gethostent and
shmatprototype. In the case of gethostent, it looks like configure is
finds netdb.h but the call to $hasproto is fails. Some of the relevant
output from Configure:
gethostbyaddr() found.
gethostbyname() found.
gethostent() found.
gethostname() found.
uname() found.
Every now and then someone has a gethostname() that lies about the
hostname
but can't be fixed for political or economic reasons. If you
wish, I can
pretend gethostname() isn't there and maybe compute hostname at
run-time
thanks to the 'hostname' command.
Shall I ignore gethostname() from now on? [n]
gethostbyaddr_r() NOT found.
gethostbyname_r() NOT found.
gethostent_r() NOT found.
gethostent() prototype NOT found.
shmctl() found.
shmget() found.
shmat() found.
and it returns (void *).
Hmm. Based on the hints in hints/darwin.sh,
the recommended value for $d_shmatprototype on this machine was
"define"!
Keep the recommended value? [y]
shmdt() found.
I can get perl to compile by setting these 2 to 'define' in config.sh
but one of the locale test cases fails, or so it seems:
# The following locales
<snip locale list>
# tested okay.
#
# None of your locales were broken.
../lib/
locale.t ..................................................
Failed 1/117 subtests
And, in the test summary:
Test Summary Report
-------------------
../ext/POSIX/t/posix.t
(Wstat: 0 Tests: 66 Failed: 0)
TODO passed: 11
../lib/locale.t
(Wstat: 0 Tests: 117 Failed: 1)
Failed test: 99
Files=1711, Tests=227037, 585 wallclock secs (32.87 usr 11.05 sys
+ 281.40 cusr 55.22 csys = 380.54 CPU)
Result: FAIL
Failed 1/1711 test programs. 1/227037 subtests failed
I never had these problems on 10.5 or 10.6 so I assume it's a 10.7
thing. Has anyone been able to successfully compile Perl on 10.7?
On a possibly related note Configure -d outputs the following message:
egrep: conflicting matchers specified