The build is just the same as for Linux. The only difference is that when installing from CPAN it does not build for me because the CPAN build tree seems to go into ~/Library/Application Support/.cpan and PDL won't build with a space in the name. Once I move to a different directory things are fine. The patch at the end of this mail fixes some of the things but there is a remaining issue that the Makefile generated by the XS handling part doesn't escape spaces in the typemap path (and you can't pre-escape them because the Makefile builder checks that the typemap exists on disk first). We'd get a lot further if ExtUtils::MakeMaker fixed that (maybe Module::Build won't have the problem anyhow).
My main issue is that slatec doesn't work for me because the slatec code gets compiled using gfortran in 32-bit mode but my perl and C compiler are in 64-bit mode so it doesn't link. I could hack the Makefile.PL to force -m64 but I'm not sure how to convince ExtUtils::F77 to do that itself automatically (ExtUtils::F77 could realise that it's running in a 64-bit perl with a GNU compiler so add the -m64 to CFLAGS itself). This doesn't affect the testing much because all the slatec-based tests are skipped if Slatec won't load and don't distinguish between "failure to find it" and "failure to load it". I'm using Snow Leopard with 64-bit perl 5.10.1. Tim On Sun, Aug 15, 2010 at 7:56 AM, Daniel Carrera <[email protected]> wrote: > Yes. We *really* need OS X testers. We don't even have proper OS X > instructions. Currently all we have for OS X users is a suggestion to > use the SciKarl package or to try "cpan PDL" and cross your fingers. > It would be great if someone wrote something more detailed, like the > instructions I've written for Ubuntu and Fedora. > > http://pdl.perl.org/2.4.7RC/?page=install > > --- ../PDL-2.4.6_992-UsfSte/Basic/Core/Dev.pm 2010-05-08 16:43:08.000000000 -1000 +++ Basic/Core/Dev.pm 2010-08-15 15:19:56.000000000 -1000 @@ -43,7 +43,7 @@ # Return library locations -sub PDL_INCLUDE { '-I'.whereami_any().'/Core' }; +sub PDL_INCLUDE { '-I"'.whereami_any().'/Core"' }; sub PDL_TYPEMAP { whereami_any().'/Core/typemap.pdl' }; # sub PDL_INST_INCLUDE { '-I'.whereami_any().'/Core' }; # sub PDL_INST_TYPEMAP { whereami_any().'/Core/typemap.pdl' }; @@ -396,6 +396,10 @@ my $core = "$w/Basic/Core"; my $gen = "$w/Basic/Gen"; + # Escape any spaces in the file name + $gen =~ s/ /\\ /g; + $core =~ s/ /\\ /g; + ## I diked out a "$gen/pm_to_blib" dependency (between $core/badsupport.p and # $core/Types.pm below), because it appears to be causing excessive recompiles. # I don't think that the .pm files themselves should depend on Gen/pm_to_blib, @@ -406,7 +410,7 @@ qq| $pref.pm: $src $core/badsupport.p $core/Types.pm - \$(PERL) -I$w/blib/lib -I$w/blib/arch \"-MPDL::PP qw/$mod $mod $pref/\" $src + \$(PERL) -I\"$w/blib/lib\" -I\"$w/blib/arch\" \"-MPDL::PP qw/$mod $mod $pref/\" $src $pref.xs: $pref.pm \$(TOUCH) \$@
_______________________________________________ Perldl mailing list [email protected] http://mailman.jach.hawaii.edu/mailman/listinfo/perldl
