Greetings,
I have a new Mac running MacOS X 10.1.3 and the Developer Dec 11 Tools.
I downloaded the stable version of perl 5.6.1. I tried following the recipe
given in the earlier thread "How-to: Compile Perl 5.6.1"
The result was a disaster!
During the preprocessing their were complaints about MASK being redefined.
Compilation seems to go OK.
When ever a link is done, it hits the fan:
cc -o libperl.dylib -L/usr/local/lib -dynamiclib -compatibility_version 1 -current_version 5.0 -image_base 0x4be00000 -install_name /System/Library/Perl/darwin/CORE/libperl.dylib perl.o gv.o toke.o perly.o op.o regcomp.o dump.o util.o mg.o hv.o av.o run.o pp_hot.o sv.o pp.o scope.o pp_ctl.o pp_sys.o doop.o doio.o regexec.o utf8.o taint.o deb.o universal.o xsutils.o globals.o perlio.o perlapi.o
rm -f opmini.c
cp op.c opmini.c
`sh cflags libperl.dylib opmini.o` -DPERL_EXTERNAL_GLOB opmini.c
CCCMD = cc -DPERL_CORE -c -pipe -fno-common -DHAS_TELLDIR_PROTOTYPE -fno-strict-aliasing -O3
rm -f opmini.c
DYLD_LIBRARY_PATH=/Users/jerry/perl-5.6.1 cc -L/usr/local/lib -o miniperl \
miniperlmain.o opmini.o libperl.dylib -ldl -lm -lc
Many many line like below...
/usr/bin/ld: warning multiple definitions of symbol _Perl_ck_bitop
opmini.o definition of _Perl_ck_bitop in section (__TEXT,__text)
libperl.dylib(op.o) definition of _Perl_ck_bitop
/usr/bin/ld: warning multiple definitions of symbol _Perl_ck_anoncode
opmini.o definition of _Perl_ck_anoncode in section (__TEXT,__text)
libperl.dylib(op.o) definition of _Perl_ck_anoncode
/usr/bin/ld: warning multiple definitions of symbol _Perl_apply_attrs_string
opmini.o definition of _Perl_apply_attrs_string in section (__TEXT,__text)
libperl.dylib(op.o) definition of _Perl_apply_attrs_string
/usr/bin/ld: warning multiple definitions of symbol _Perl_utilize
opmini.o definition of _Perl_utilize in section (__TEXT,__text)
libperl.dylib(op.o) definition of _Perl_utilize
/usr/bin/ld: warning multiple definitions of symbol _Perl_scope
opmini.o definition of _Perl_scope in section (__TEXT,__text)
libperl.dylib(op.o) definition of _Perl_scope
/usr/bin/ld: warning multiple definitions of symbol _Perl_scalar
opmini.o definition of _Perl_scalar in section (__TEXT,__text)
libperl.dylib(op.o) definition of _Perl_scalar
/usr/bin/ld: warning multiple definitions of symbol _Perl_sawparens
opmini.o definition of _Perl_sawparens in section (__TEXT,__text)
libperl.dylib(op.o) definition of _Perl_sawparens
/usr/bin/ld: warning multiple definitions of symbol _Perl_ref
opmini.o definition of _Perl_ref in section (__TEXT,__text)
libperl.dylib(op.o) definition of _Perl_ref
/usr/bin/ld: warning multiple definitions of symbol _Perl_prepend_elem
opmini.o definition of _Perl_prepend_elem in section (__TEXT,__text)
libperl.dylib(op.o) definition of _Perl_prepend_elem
/usr/bin/ld: warning multiple definitions of symbol _Perl_pmruntime
oplibperl.dylib(op.o) definition of _Perl_newSVOP
/usr/bin/ld: warning multiple definitions of symbol _Perl_newSUB
opmini.o definition of _Perl_newSUB in section (__TEXT,__text)
libperl.dylib(op.o) definition of _Perl_newSUB
DYLD_LIBRARY_PATH=/Users/jerry/perl-5.6.1 ./miniperl -w -Ilib -MExporter -e '<?>' || make minitest
Can't load module File::Glob, dynamic loading not available in this perl.
(You may need to build a new perl executable which either supports
dynamic loading or has the File::Glob module statically linked into it.)
at -e line 1
Compilation failed in require at -e line 1.
BEGIN failed--compilation aborted at -e line 1.
You may see some irrelevant test failures if you have been unable
to build lib/Config.pm.
cd t && (rm -f perl; /bin/ln -s ../miniperl perl) \
&& DYLD_LIBRARY_PATH=/Users/jerry/perl-5.6.1 ./perl TEST base/*.t comp/*.t cmd/*.t run/*.t io/*.t op/*.t pragma/*.t </dev/tty
base/cond............ok
base/if..............ok
base/lex.............ok
base/pat.............ok
base/rs..............ok
base/term............Can't locate Config.pm in @INC (@INC contains: ../lib) at base/term.t line 10.
BEGIN failed--compilation aborted at base/term.t line 10.
FAILED at test 0
Failed a basic test--cannot continue.
make[1]: [minitest] Error 2 (ignored)
make: [extra.pods] Error 1 (ignored)
DYLD_LIBRARY_PATH=/Users/jerry/perl-5.6.1 ./miniperl configpm configpm.tmp
sh mv-if-diff configpm.tmp lib/Config.pm
AutoSplitting perl library
DYLD_LIBRARY_PATH=/Users/jerry/perl-5.6.1 ./miniperl -Ilib -e 'use AutoSplit; \
autosplit_lib_modules(@ARGV)' lib/*.pm lib/*/*.pm
AutoSplitting lib/Getopt/Long.pm (lib/auto/Getopt/Long)
DYLD_LIBRARY_PATH=/Users/jerry/perl-5.6.1 ./miniperl minimod.pl > minimod.tmp
sh mv-if-diff minimod.tmp lib/ExtUtils/Miniperl.pm
sh writemain lib/auto/DynaLoader/DynaLoader.a > writemain.tmp
sh mv-if-diff writemain.tmp perlmain.c
File perlmain.c not changed.
`sh cflags libperl.dylib perlmain.o` perlmain.c
CCCMD = cc -DPERL_CORE -c -pipe -fno-common -DHAS_TELLDIR_PROTOTYPE -fno-strict-aliasing -O3
Making DynaLoader (static)
Can't load module File::Glob, dynamic loading not available in this perl.
(You may need to build a new perl executable which either supports
dynamic loading or has the File::Glob module statically linked into it.)
Compilation failed in require at (eval 70) line 7.
BEGIN failed--compilation aborted at (eval 70) line 7.
at ../../lib/ExtUtils/MakeMaker.pm line 507
Warning: No Makefile!
make[1]: *** No rule to make target `config'. Stop.
make config failed, continuing anyway...
make[1]: *** No rule to make target `all'. Stop.
make: *** [lib/auto/DynaLoader/DynaLoader.a] Error 2
[jerry@macjerry ~/perl-5.6.1] :
Help!
I have a new Mac running MacOS X 10.1.3 and the Developer Dec 11 Tools.
I downloaded the stable version of perl 5.6.1. I tried following the recipe
given in the earlier thread "How-to: Compile Perl 5.6.1"
The result was a disaster!
During the preprocessing their were complaints about MASK being redefined.
Compilation seems to go OK.
When ever a link is done, it hits the fan:
cc -o libperl.dylib -L/usr/local/lib -dynamiclib -compatibility_version 1 -current_version 5.0 -image_base 0x4be00000 -install_name /System/Library/Perl/darwin/CORE/libperl.dylib perl.o gv.o toke.o perly.o op.o regcomp.o dump.o util.o mg.o hv.o av.o run.o pp_hot.o sv.o pp.o scope.o pp_ctl.o pp_sys.o doop.o doio.o regexec.o utf8.o taint.o deb.o universal.o xsutils.o globals.o perlio.o perlapi.o
rm -f opmini.c
cp op.c opmini.c
`sh cflags libperl.dylib opmini.o` -DPERL_EXTERNAL_GLOB opmini.c
CCCMD = cc -DPERL_CORE -c -pipe -fno-common -DHAS_TELLDIR_PROTOTYPE -fno-strict-aliasing -O3
rm -f opmini.c
DYLD_LIBRARY_PATH=/Users/jerry/perl-5.6.1 cc -L/usr/local/lib -o miniperl \
miniperlmain.o opmini.o libperl.dylib -ldl -lm -lc
Many many line like below...
/usr/bin/ld: warning multiple definitions of symbol _Perl_ck_bitop
opmini.o definition of _Perl_ck_bitop in section (__TEXT,__text)
libperl.dylib(op.o) definition of _Perl_ck_bitop
/usr/bin/ld: warning multiple definitions of symbol _Perl_ck_anoncode
opmini.o definition of _Perl_ck_anoncode in section (__TEXT,__text)
libperl.dylib(op.o) definition of _Perl_ck_anoncode
/usr/bin/ld: warning multiple definitions of symbol _Perl_apply_attrs_string
opmini.o definition of _Perl_apply_attrs_string in section (__TEXT,__text)
libperl.dylib(op.o) definition of _Perl_apply_attrs_string
/usr/bin/ld: warning multiple definitions of symbol _Perl_utilize
opmini.o definition of _Perl_utilize in section (__TEXT,__text)
libperl.dylib(op.o) definition of _Perl_utilize
/usr/bin/ld: warning multiple definitions of symbol _Perl_scope
opmini.o definition of _Perl_scope in section (__TEXT,__text)
libperl.dylib(op.o) definition of _Perl_scope
/usr/bin/ld: warning multiple definitions of symbol _Perl_scalar
opmini.o definition of _Perl_scalar in section (__TEXT,__text)
libperl.dylib(op.o) definition of _Perl_scalar
/usr/bin/ld: warning multiple definitions of symbol _Perl_sawparens
opmini.o definition of _Perl_sawparens in section (__TEXT,__text)
libperl.dylib(op.o) definition of _Perl_sawparens
/usr/bin/ld: warning multiple definitions of symbol _Perl_ref
opmini.o definition of _Perl_ref in section (__TEXT,__text)
libperl.dylib(op.o) definition of _Perl_ref
/usr/bin/ld: warning multiple definitions of symbol _Perl_prepend_elem
opmini.o definition of _Perl_prepend_elem in section (__TEXT,__text)
libperl.dylib(op.o) definition of _Perl_prepend_elem
/usr/bin/ld: warning multiple definitions of symbol _Perl_pmruntime
oplibperl.dylib(op.o) definition of _Perl_newSVOP
/usr/bin/ld: warning multiple definitions of symbol _Perl_newSUB
opmini.o definition of _Perl_newSUB in section (__TEXT,__text)
libperl.dylib(op.o) definition of _Perl_newSUB
DYLD_LIBRARY_PATH=/Users/jerry/perl-5.6.1 ./miniperl -w -Ilib -MExporter -e '<?>' || make minitest
Can't load module File::Glob, dynamic loading not available in this perl.
(You may need to build a new perl executable which either supports
dynamic loading or has the File::Glob module statically linked into it.)
at -e line 1
Compilation failed in require at -e line 1.
BEGIN failed--compilation aborted at -e line 1.
You may see some irrelevant test failures if you have been unable
to build lib/Config.pm.
cd t && (rm -f perl; /bin/ln -s ../miniperl perl) \
&& DYLD_LIBRARY_PATH=/Users/jerry/perl-5.6.1 ./perl TEST base/*.t comp/*.t cmd/*.t run/*.t io/*.t op/*.t pragma/*.t </dev/tty
base/cond............ok
base/if..............ok
base/lex.............ok
base/pat.............ok
base/rs..............ok
base/term............Can't locate Config.pm in @INC (@INC contains: ../lib) at base/term.t line 10.
BEGIN failed--compilation aborted at base/term.t line 10.
FAILED at test 0
Failed a basic test--cannot continue.
make[1]: [minitest] Error 2 (ignored)
make: [extra.pods] Error 1 (ignored)
DYLD_LIBRARY_PATH=/Users/jerry/perl-5.6.1 ./miniperl configpm configpm.tmp
sh mv-if-diff configpm.tmp lib/Config.pm
AutoSplitting perl library
DYLD_LIBRARY_PATH=/Users/jerry/perl-5.6.1 ./miniperl -Ilib -e 'use AutoSplit; \
autosplit_lib_modules(@ARGV)' lib/*.pm lib/*/*.pm
AutoSplitting lib/Getopt/Long.pm (lib/auto/Getopt/Long)
DYLD_LIBRARY_PATH=/Users/jerry/perl-5.6.1 ./miniperl minimod.pl > minimod.tmp
sh mv-if-diff minimod.tmp lib/ExtUtils/Miniperl.pm
sh writemain lib/auto/DynaLoader/DynaLoader.a > writemain.tmp
sh mv-if-diff writemain.tmp perlmain.c
File perlmain.c not changed.
`sh cflags libperl.dylib perlmain.o` perlmain.c
CCCMD = cc -DPERL_CORE -c -pipe -fno-common -DHAS_TELLDIR_PROTOTYPE -fno-strict-aliasing -O3
Making DynaLoader (static)
Can't load module File::Glob, dynamic loading not available in this perl.
(You may need to build a new perl executable which either supports
dynamic loading or has the File::Glob module statically linked into it.)
Compilation failed in require at (eval 70) line 7.
BEGIN failed--compilation aborted at (eval 70) line 7.
at ../../lib/ExtUtils/MakeMaker.pm line 507
Warning: No Makefile!
make[1]: *** No rule to make target `config'. Stop.
make config failed, continuing anyway...
make[1]: *** No rule to make target `all'. Stop.
make: *** [lib/auto/DynaLoader/DynaLoader.a] Error 2
[jerry@macjerry ~/perl-5.6.1] :
Help!