custom-gcc: modernize

- use pkg instead of directly installing from ports
	- reduce references to old versions of gcc, and make the article more
	  future-proof
	- now that we either have a modern version of gcc or clang in base / as
	  the package building compiler, the impact of binary perf is no longer
	  relevant.

	really, this article should either move into the handbook or be removed.
This commit is contained in:
Eitan Adler 2015-04-02 23:55:04 +00:00
parent 8150aa665f
commit 6fed6d55db
Notes: svn2git 2020-12-08 03:00:23 +00:00
svn path=/head/; revision=46434

View file

@ -55,7 +55,7 @@
<title>Prerequisites</title>
<sect2 xml:id="installing-binutils">
<title>Installing binutils from ports</title>
<title>Installing binutils and gcc</title>
<para>To make use of all of the new features in the latest
<application>GCC</application> versions, the latest version of
@ -69,24 +69,19 @@
<application>binutils</application> using the &os; ports tree,
issue the following command:</para>
<screen>&prompt.root; <userinput>cd /usr/ports/devel/binutils &amp;&amp; make install</userinput></screen>
</sect2>
<sect2 xml:id="installing-gcc">
<title>Installing GCC from ports</title>
<screen>&prompt.root; <userinput>pkg install devel/binutils</userinput></screen>
<para>The &os; ports tree offers several new versions of
<application>GCC</application>. The following example is for
the stable version 4.4. However, it is possible to install
previous or later development versions (e.g.
<package>lang/gcc43</package> or
<package>lang/gcc45</package>).</para>
<application>GCC</application>. The default version is called
<package>lang/gcc</package>. Other versions can be found
with
<screen>&prompt.user; <userinput>pkg search gcc</userinput></screen>
</para>
<para>To install one of the mentioned
<application>GCC</application> ports, run the following
command:</para>
<application>GCC</application> ports, run:</para>
<screen>&prompt.root; <userinput>cd /usr/ports/lang/<replaceable>gcc44</replaceable> &amp;&amp; make install</userinput></screen>
<screen>&prompt.root; <userinput>pkg install <replaceable>lang/gcc</replaceable></userinput></screen>
</sect2>
</sect1>
@ -203,23 +198,4 @@ CPP=cpp44
<programlisting>.if empty(.CURDIR:M/usr/ports/net/openldap*) &amp;&amp; empty(.CURDIR:M/usr/ports/xxx/yyy) &amp;&amp; ...</programlisting>
</sect2>
</sect1>
<sect1 xml:id="performance-imparct">
<title>Impact on the binary performance</title>
<para>Using <application>GCC</application> version 4.4 with
<acronym>SSSE3</acronym> instruction set enabled (if supported by
the <acronym>CPU</acronym>) may yield up to 10% average increase
in binary performance. In certain tests, the results show
more than a 20% performance boost (e.g. in multimedia
processing).</para>
<para>The table located at <uri xlink:href="http://people.freebsd.org/~mm/benchmarks/perlbench/">http://people.freebsd.org/~mm/benchmarks/perlbench/</uri>
shows a comparison of <application>GCC</application> versions
currently available in base &os; system,
<application>GCC</application> version 4.3 and
<application>GCC</application> version 4.4 with various
combinations of <literal>CFLAGS</literal> using the perlbench
benchmark suite.</para>
</sect1>
</article>