Perl / perl5

🐪 The Perl programming language
https://dev.perl.org/perl5/
Other
1.85k stars 524 forks source link

build problem on Mac OSX #4030

Closed p5pRT closed 20 years ago

p5pRT commented 22 years ago

Migrated from rt.perl.org#7040 (status was 'resolved')

Searchable as RT7040$

p5pRT commented 22 years ago

From howardm@lsil.com

I just tried to build 5.6.1 on Mac OSX (v10.0.3) and ran into the problem where everything *seemed* to go well except that the Makefile was never actually created from Makefile.SH (even though I got a message to that effect on console).

After much playing around\, I realized that on OSX\, if you format the disk for Apple HFS+ format (vs. Unix UFS)\, then the filesystem is NOT really case sensitive (although you do see case).

For example\, if I 'touch FOO' and then 'touch foo'\, I only see FOO in the directory. And trying to mv another file from xyz to foo results in a 'foo already exists' error.

So\, the problem is that you use Makefile and makefile ($firstmakefile) and in Makefile.SH\, there is a 'rm -f $firstmakefile' which nukes Makefile.

I got around it by forcing $firstmakefile to be 'makefile_darwin' but then I had to run make depend manually due to the odd name.

After that\, everything built but I got a couple of test errors (the old Berkeley DBM error and test 51 (which indicated that NeXT boxes usually fail this)

Also\, an interesting thing while importing an existing script (from Solaris) is that in Solaris\, I can​:

unshift(@​INC\, '/some/path')

but OSX won't allow that.

I have to enclose it in a BEGIN block.

----- Forwarded message from Howard Moftich \howardm@​lsil\.com -----

Date​: Sat\, 26 May 2001 12​:14​:18 -0400 (EDT) From​: Howard Moftich \howardm@​lsil\.com To​: howardm@​mhbs.lsil.com

#!/bin/sh

# This script is designed to provide a handy summary of the configuration # information being used to build perl. This is especially useful if you # are requesting help from comp.lang.perl.misc on usenet or via mail.

# Note that the text lines /^Summary of/ .. /^\s*$/ are copied into Config.pm. cat \<\<'!NO!SUBS!' Summary of my perl5 (revision 5.0 version 6 subversion 1) configuration​:   Platform​:   osname=darwin\, osvers=1.3.3\, archname=darwin   uname='darwin localhost 1.3.3 darwin kernel version 1.3.3​: fri may 4 13​:46​:54 pdt 2001; root​:xnuxnu-124.8.obj~1release_ppc power macintosh powerpc '   config_args='-de'   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 -I/usr/local/include'\,   optimize='-O3'\,   cppflags='-pipe -fno-common -DHAS_TELLDIR_PROTOTYPE -fno-strict-aliasing -I/usr/local/include'   ccversion=''\, gccversion='Apple DevKit-based CPP 6.0alpha'\, gccosandvers=''   intsize=4\, longsize=4\, ptrsize=4\, doublesize=8\, byteorder=0xffff   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 =' -L/usr/local/lib'   libpth=/usr/local/lib /usr/lib   libs=-lgdbm -ldl -lm -lc   perllibs=-ldl -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=' -bundle -undefined suppress -L/usr/local/lib'

!NO!SUBS!

----- End forwarded message -----

--

Regards\, Howard

+----------------------------------------------------------------+ Howard Moftich Snailmail​: LSI Logic Corp. 200 West Street Phone​: 781.890.0180 Waltham\, MA 02451 USA FAX​: 781.890.6158 Email​: howardm at el es eye el dot com
Emsfiler Home Page URL​: useng20.lsil.com/~uslsiapp/emsfiler

+----------------------------------------------------------------+

p5pRT commented 22 years ago

From @jhi

Your analysis is correct. A workaround much like yours has already been included for Mac OS X for the next Perl releases.

After that\, everything built but I got a couple of test errors (the old Berkeley DBM error and test 51 (which indicated that NeXT boxes usually fail this)

Also\, an interesting thing while importing an existing script (from Solaris) is that in Solaris\, I can​:

unshift(@​INC\, '/some/path')

but OSX won't allow that.

Ummm\, "won't allow"? What do you mean? Do you get an error message?

I have to enclose it in a BEGIN block.

You should be able to use

  use lib '/some/path'

in both.

----- Forwarded message from Howard Moftich \howardm@&#8203;lsil\.com -----

Date​: Sat\, 26 May 2001 12​:14​:18 -0400 (EDT) From​: Howard Moftich \howardm@&#8203;lsil\.com To​: howardm@​mhbs.lsil.com

#!/bin/sh

# This script is designed to provide a handy summary of the configuration # information being used to build perl. This is especially useful if you # are requesting help from comp.lang.perl.misc on usenet or via mail.

# Note that the text lines /^Summary of/ .. /^\s*$/ are copied into Config.pm. cat \<\<'!NO!SUBS!' Summary of my perl5 (revision 5.0 version 6 subversion 1) configuration​: Platform​: osname=darwin\, osvers=1.3.3\, archname=darwin uname='darwin localhost 1.3.3 darwin kernel version 1.3.3​: fri may 4 13​:46​:54 pdt 2001; root​:xnuxnu-124.8.obj~1release_ppc power macintosh powerpc ' config_args='-de' 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 -I/usr/local/include'\, optimize='-O3'\, cppflags='-pipe -fno-common -DHAS_TELLDIR_PROTOTYPE -fno-strict-aliasing -I/usr/local/include' ccversion=''\, gccversion='Apple DevKit-based CPP 6.0alpha'\, gccosandvers='' intsize=4\, longsize=4\, ptrsize=4\, doublesize=8\, byteorder=0xffff 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 =' -L/usr/local/lib' libpth=/usr/local/lib /usr/lib libs=-lgdbm -ldl -lm -lc perllibs=-ldl -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=' -bundle -undefined suppress -L/usr/local/lib'

!NO!SUBS!

----- End forwarded message -----

--

Regards\, Howard

+----------------------------------------------------------------+ Howard Moftich Snailmail​: LSI Logic Corp. 200 West Street Phone​: 781.890.0180 Waltham\, MA 02451 USA FAX​: 781.890.6158 Email​: howardm at el es eye el dot com
Emsfiler Home Page URL​: useng20.lsil.com/~uslsiapp/emsfiler

+----------------------------------------------------------------+