<filename>/usr/ucb/cc</filename>;
use <filename>/opt/SUNWspro/bin/cc</filename>.
</para>
<para>
You can download Sun Studio
from <ulink url="https://www.oracle.com/technetwork/server-storage/solarisstudio/downloads/"></ulink>.
Many GNU tools are integrated into Solaris 10, or they are
present on the Solaris companion CD. If you need packages for
older versions of Solaris, you can find these tools
at <ulink url="http://www.sunfreeware.com"></ulink>.
If you prefer
sources, look
at <ulink url="https://www.gnu.org/prep/ftp"></ulink>.
</para>
</sect3>
<sect3 id="installation-notes-solaris-configure-complains">
<title>configure Complains About a Failed Test Program</title>
<para>
If <command>configure</command> complains about a failed test
program, this is probably a case of the run-time linker being
unable to find some library, probably libz, libreadline or some
other non-standard library such as libssl. To point it to the
right location, set the <envar>LDFLAGS</envar> environment
variable on the <command>configure</command> command line, e.g.,
<programlisting>
configure ... LDFLAGS="-R /usr/sfw/lib:/opt/sfw/lib:/usr/local/lib"
</programlisting>
See
the <citerefentry><refentrytitle>ld</refentrytitle><manvolnum>1</manvolnum></citerefentry>
man page for more information.
</para>
</sect3>
<sect3 id="installation-notes-solaris-comp-opt-perf">
<title>Compiling for Optimal Performance</title>
<para>
On the SPARC architecture, Sun Studio is strongly recommended for
compilation. Try using the <option>-xO5</option> optimization
flag to generate significantly faster binaries. Do not use any
flags that modify behavior of floating-point operations
and <varname>errno</varname> processing (e.g.,
<option>-fast</option>).
</para>
<para>
If you do not have a reason to use 64-bit binaries on SPARC,
prefer the 32-bit version. The 64-bit operations are slower and
64-bit binaries are slower than the 32-bit variants. On the
other hand, 32-bit code on the AMD64 CPU family is not native,
so 32-bit code is significantly slower on that CPU family.
</para>
</sect3>
<sect3 id="installation-notes-solaris-using-dtrace">
<title>Using DTrace for Tracing PostgreSQL</title>
<para>
Yes, using DTrace is possible. See <xref linkend="dynamic-trace"/> for
further information.
</para>
<para>
If you see the linking of the <command>postgres</command> executable abort with an
error message like:
<screen>
Undefined first referenced
symbol in file
AbortTransaction utils/probes.o
CommitTransaction utils/probes.o
ld: fatal: Symbol referencing errors. No output written to postgres
collect2: ld returned 1 exit status
make: *** [postgres] Error 1
</screen>
your DTrace installation is too old to handle probes in static
functions. You need Solaris 10u4 or newer to use DTrace.
</para>
</sect3>
</sect2>
<sect2 id="installation-notes-visual-studio">
<title>Visual Studio</title>
<indexterm zone="installation-notes-visual-studio">
<primary>Visual Studio</primary>
<secondary>installation on</secondary>
</indexterm>
<para>
It is recommended that most users download the binary distribution for
Windows, available as a graphical installer package from the
<productname>PostgreSQL</productname> website at
<ulink url="https://www.postgresql.org/download/"></ulink>. Building from
source is only intended for people developing
<productname>PostgreSQL</productname> or extensions.
</para>
<para>
PostgreSQL for Windows with Visual Studio can be built using Meson, as
described in <xref linkend="install-meson"/>.
The native Windows port requires a 32 or 64-bit version of