Am 16. Okt. 2018 um 17:13 schrieb Tom Lane <t...@sss.pgh.pa.us>:
> Oh, well *this* is interesting.  I stated at the top of this thread that
> pltcl doesn't build on Mojave without -isysroot because TCL_INCLUDE_SPEC
> gets set to
>       -iwithsysroot 
> /System/Library/Frameworks/Tcl.framework/Versions/8.5/Headers

> Now, I would swear that I tested that before, and it didn't work;
> but I think I might have been testing the combination of Xcode 10 on
> High Sierra.  It definitely works with Xcode 10 on Mojave.  I no longer
> have a High Sierra installation to recheck the original observation on.

I realised that I can disable PG_SYSROOT by providing a non-existing dir name,
so I've done some testing to try to reproduce your original issue.

I've tested building the PG 11.0 tarball on the following systems:

macOS 10.13 with Xcode 9.4.1
macOS 10.13 with Xcode 10.0
macOS 10.14 with Xcode 10.0

On macOS 10.13 the following worked fine both for Xcode 9 and 10:
PG_SYSROOT=no-sysroot ./configure --with-tcl

On macOS 10.14 the above failed because it didn't find tclConfig.sh.
The following did work:
PG_SYSROOT=no-sysroot ./configure --with-tcl 
--with-tclconfig=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Tcl.framework

So it seems that providing -isysroot is not actually necessary for building 
--with-tcl.
clang finds the headers just fine.

Is it possible that you were using a different compiler that made the -isysroot 
setting necessary?

In any case, I'm pretty sure that your patch should fix my problem with 
building extensions.

For Postgres.app, since I'm building on macOS 10.12, I think I will just use 
the PG_SYSROOT=no-sysroot trick for now.

Best regards,
Jakob

Reply via email to