|
@@ -3,14 +3,34 @@
|
|
|
<sect2>
|
|
|
<title>Installing Findutils</title>
|
|
|
|
|
|
-<para>A patch must be applied in order to prevent compilation
|
|
|
-errors. The patch fixes a variable conflict and some bad syntax:</para>
|
|
|
+<para>The Findutils package is quite old and it has problems compiling
|
|
|
+against newer Glibc versions (Glibc-2.0.x and up). You need to apply the
|
|
|
+patch which fixes the following issues:</para>
|
|
|
+
|
|
|
+<itemizedlist>
|
|
|
+<listitem><para>Findutils declares a function called basename, but this
|
|
|
+function name is already used by the C standard libraries. This patch
|
|
|
+changes the Findutils version of basename function so that it is called
|
|
|
+basename2 instead.</para></listitem>
|
|
|
+
|
|
|
+<listitem><para>Findutils uses an incorrect way to use library files. It
|
|
|
+declares library functions, to tell the compiler what the name of the
|
|
|
+function will be when the libraries are linked in. This syntax is invalid
|
|
|
+and causes compiler warnings/errors. This patch removes this improper
|
|
|
+syntax.</para></listitem>
|
|
|
+
|
|
|
+<listitem><para>Every GNU package is supposed use a macro called _GNU_SOURCE.
|
|
|
+This macro enables declarations of GNU library extension functions and so the
|
|
|
+compiler will be able to detect name conflicts between functions more easily.
|
|
|
+This patch adds this macro to the source code.</para></listitem>
|
|
|
+</itemizedlist>
|
|
|
|
|
|
<para><screen><userinput>patch -Np1 -i ../findutils-&findutils-patch-version;.patch</userinput></screen></para>
|
|
|
|
|
|
-<para>The <userinput>locate</userinput> program from Findutils may
|
|
|
-segfault if it encounters a long path name. To correct this, apply
|
|
|
-the second patch:</para>
|
|
|
+<para>There is a bug in locate.c of Findutils that causes a segmentation
|
|
|
+fault to occur on very long path names. The problem is caused by the
|
|
|
+get_short() function calculating negative numbers incorrectly. This patch
|
|
|
+corrects this bug.</para>
|
|
|
|
|
|
<para><screen><userinput>patch -Np1 -i ../findutils-&findutils-segfault-patch-version;-segfault.patch</userinput></screen></para>
|
|
|
|