Subject: | Mac Mojave: your tclconfig ... does not provide tcl.h |
Building Tcl.pm on a Mac Mojave system is not possible, regardless with the system perl or a self-compiled one:
...
$ perl5.30.1 Makefile.PL
tclsh=/usr/bin/tclsh
tclConfig.sh=/System/Library/Frameworks/Tcl.framework/Versions/8.5/tclConfig.sh
tcl_library=/System/Library/Frameworks/Tcl.framework/Versions/8.5/Resources/Scripts
tcl_version=8.5
Using config data in /System/Library/Frameworks/Tcl.framework/Versions/8.5/tclConfig.sh
incpath -iwithsysroot /System/Library/Frameworks/Tcl.framework/Versions/8.5/Headers from your tclconfig /System/Library/Frameworks/Tcl.framework/Versions/8.5/tclConfig.sh does not provide tcl.h at Makefile.PL line 36.
...
However, if I remove the following condition from Makefile.PL:
diff --git i/Makefile.PL w/Makefile.PL
index 481d3aa..5ed2d07 100755
--- i/Makefile.PL
+++ w/Makefile.PL
@@ -157,10 +157,10 @@ if (defined($libpath) && defined($incpath)) {
# https://www.cpantesters.org/cpan/report/18397198-6bf4-1014-85e5-4e79f459b9c5
# Tcl.xs:32:10: fatal error: tcl.h: No such file or directory
if ($incpath) {
- my @tclh = grep {-f "$_/tcl.h"} $incpath=~/-I(\S+)/g;
- if ($#tclh==-1) {
- _die "incpath $incpath from your tclconfig $tclconfig does not provide tcl.h"
- }
+ #my @tclh = grep {-f "$_/tcl.h"} $incpath=~/-I(\S+)/g;
+ #if ($#tclh==-1) {
+ # _die "incpath $incpath from your tclconfig $tclconfig does not provide tcl.h"
+ #}
} else {_die "can not figure out incpath from your tclconfig $tclconfig"}
if ($usestubs) {
... then building & testing works OK.