mirror of
https://git.postgresql.org/git/postgresql.git
synced 2024-09-03 01:37:20 +02:00
Doc: improve directions for building on macOS.
In light of recent discussions, we should instruct people to install Apple's command line tools; installing Xcode is secondary. Also, fix sample command for finding out the default sysroot, as we now know that the command originally recommended can give a result that doesn't match your OS version. Also document the workaround to use if you really don't want configure to select a sysroot at all. Discussion: https://postgr.es/m/20210119111625.20435-1-james.hilliard1@gmail.com
This commit is contained in:
parent
a5f7b837f3
commit
baf9fc46ec
@ -2477,6 +2477,17 @@ PHSS_30849 s700_800 u2comp/be/plugin library Patch
|
|||||||
<secondary>installation on</secondary>
|
<secondary>installation on</secondary>
|
||||||
</indexterm>
|
</indexterm>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
To build <productname>PostgreSQL</productname> from source
|
||||||
|
on <productname>macOS</productname>, you will need to install Apple's
|
||||||
|
command line developer tools, which can be done by issuing
|
||||||
|
<programlisting>
|
||||||
|
xcode-select --install
|
||||||
|
</programlisting>
|
||||||
|
(note that this will pop up a GUI dialog window for confirmation).
|
||||||
|
You may or may not wish to also install Xcode.
|
||||||
|
</para>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
On recent <productname>macOS</productname> releases, it's necessary to
|
On recent <productname>macOS</productname> releases, it's necessary to
|
||||||
embed the <quote>sysroot</quote> path in the include switches used to
|
embed the <quote>sysroot</quote> path in the include switches used to
|
||||||
@ -2493,7 +2504,7 @@ make PG_SYSROOT=<replaceable>/desired/path</replaceable> all
|
|||||||
</programlisting>
|
</programlisting>
|
||||||
To find out the appropriate path on your machine, run
|
To find out the appropriate path on your machine, run
|
||||||
<programlisting>
|
<programlisting>
|
||||||
xcodebuild -version -sdk macosx Path
|
xcrun --show-sdk-path
|
||||||
</programlisting>
|
</programlisting>
|
||||||
Note that building an extension using a different sysroot version than
|
Note that building an extension using a different sysroot version than
|
||||||
was used to build the core server is not really recommended; in the
|
was used to build the core server is not really recommended; in the
|
||||||
@ -2507,6 +2518,19 @@ xcodebuild -version -sdk macosx Path
|
|||||||
<programlisting>
|
<programlisting>
|
||||||
./configure ... PG_SYSROOT=<replaceable>/desired/path</replaceable>
|
./configure ... PG_SYSROOT=<replaceable>/desired/path</replaceable>
|
||||||
</programlisting>
|
</programlisting>
|
||||||
|
This would primarily be useful to cross-compile for some other
|
||||||
|
macOS version. There is no guarantee that the resulting executables
|
||||||
|
will run on the current host.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
To suppress the <option>-isysroot</option> options altogether, use
|
||||||
|
<programlisting>
|
||||||
|
./configure ... PG_SYSROOT=none
|
||||||
|
</programlisting>
|
||||||
|
(any nonexistent pathname will work). This might be useful if you wish
|
||||||
|
to build with a non-Apple compiler, but beware that that case is not
|
||||||
|
tested or supported by the PostgreSQL developers.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
|
Loading…
Reference in New Issue
Block a user