Re: [PATCH 1/1] Fix detection of pwritev support for OSX. - Mailing list pgsql-hackers
From | Sergey Shinderuk |
---|---|
Subject | Re: [PATCH 1/1] Fix detection of pwritev support for OSX. |
Date | |
Msg-id | 6d43a157-e51a-6449-0b47-94d133829afc@postgrespro.ru Whole thread Raw |
In response to | Re: [PATCH 1/1] Fix detection of pwritev support for OSX. (James Hilliard <james.hilliard1@gmail.com>) |
Responses |
Re: [PATCH 1/1] Fix detection of pwritev support for OSX.
Re: [PATCH 1/1] Fix detection of pwritev support for OSX. |
List | pgsql-hackers |
On 22.01.2021 01:17, James Hilliard wrote: > On Thu, Jan 21, 2021 at 11:38 AM Tom Lane <tgl@sss.pgh.pa.us> wrote: >> >> James Hilliard <james.hilliard1@gmail.com> writes: >>> On Wed, Jan 20, 2021 at 4:07 PM Tom Lane <tgl@sss.pgh.pa.us> wrote: >>>> I'm not sure that the case of not having the "command line tools" >>>> installed is interesting for our purposes. AFAIK you have to have >>>> that in order to have access to required tools like bison and gmake. >>>> (That reminds me, I was intending to add something to our docs >>>> about how-to-build-from-source to say that you need to install those.) >> >>> Yeah, not 100% sure but I was able to build just fine after deleting my >>> command line tools. >> >> Hm. I've never been totally clear on what's included in the "command line >> tools", although it's now apparent that one thing that gets installed is >> an SDK matching the host OS version. However, Apple's description at [1] >> says >> >> Command Line Tools >> >> Download the macOS SDK, headers, and build tools such as the Apple >> LLVM compiler and Make. These tools make it easy to install open >> source software or develop on UNIX within Terminal. macOS can >> automatically download these tools the first time you try to build >> software, and they are available on the downloads page. >> >> which certainly strongly implies that gmake is not there otherwise. >> At this point I lack any "bare" macOS system to check it on. I wonder >> whether you have a copy of make available from MacPorts or Homebrew. >> Or maybe uninstalling the command line tools doesn't really remove >> everything? > Yeah, not entirely sure there but I do use homebrew. FWIW, I tested with a clean install of Catalina. Before I install anything at all, I already have xcode-select, xcrun and all the shims in /usr/bin for developer tools, including cc, make, git, xcodebuild... Just about everything listed in the FILES section of "man xcode-select". When I run any tool (except xcode-select), a GUI dialog pops up offering to install the Command Line Tools. So apparently those shims are not functional yet. I rejected the installation. Instead I downloaded Xcode12.1.xip via [1], the latest version with macosx10.15 SDK. I unpacked it and installed by dragging Xcode.app to /Applications. It seems to me there is no magic behind the scenes, just moving the directory. I selectively checked that the shims in /usr/bin didn't change after that. Now, running "cc" tells me that I have to accept the Xcode license agreement. After accepting it, all the shims in /usr/bin start to work, forwarding to the real tools inside Xcode.app. If I run the Homebrew installer, it says that it's going to install the Command Line Tools. I don't know why it needs them, all the tools are there already. I thought that CLT is a lighter-weight option when you don't want the full Xcode installation, but Homebrew requires them anyway. I rejected to install CLT and abandoned Homebrew. Then I just cloned and built Postgres successfully. So it looks like Xcode is really enough, at least on a recent macOS version. [1] https://xcodereleases.com -- Sergey Shinderuk Postgres Professional: http://www.postgrespro.com The Russian Postgres Company
pgsql-hackers by date: