Re: PG vs macOS Mojave

From: Jakob Egger <jakob(at)eggerapps(dot)at>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: pgsql-hackers(at)lists(dot)postgresql(dot)org
Subject: Re: PG vs macOS Mojave
Date: 2018-10-17 12:11:04
Message-ID: 5BE313A1-1318-4A68-A183-5F60CA968CF1@eggerapps.at
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers


Am 16. Okt. 2018 um 17:13 schrieb Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)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

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Sandeep Thakkar 2018-10-17 13:15:42 Re: Perl 5.26 and windows build system
Previous Message Amit Kapila 2018-10-17 11:50:46 Re: Is there any way to request unique lwlock inside a background worker in PG9.4?