Estimación del tiempo de construcción: 0.12 SBU Estimación del espacio necesario en disco: 8 MB |
Última versión comprobada: 4.1.
El paquete Findutils contiene pogramas para encontrar ficheros, tanto al vuelo (haciendo una búsqueda recursiva en vivo a través de los directorios y mostrando sólo los ficheros que cumplan las especificaciones) o mediante una búsqueda a través de una base de datos.
Findutils instala lo siguiente:
Última versión comprobada: 4.1.
Bash: sh
Binutils: ar, as, ld, ranlib
Diffutils: cmp
Fileutils: chmod, cp, install, mv, rm
Grep: egrep, grep
Gcc: cc1, collect2, cpp0, gcc
Make: make
Patch: patch
Sed: sed
Sh-utils: basename, date, echo, hostname
Textutils: cat, tr
El paquete Findutils es bastante antiguo y tiene problemas al compilarlo con versiones recientes de Glibc (Glibc-2.0.x y superiores). Necesitas aplicar el parche que soluciona estos conflictos:
Findutils declara una función llamada basename, pero este nombre de función ya es utilizado por las librerías estandar de C. Este parche cambia la función basename de Findutils para que pase a llamarse basename2.
Findutils usa las librerías de una forma incorrecta. Declara funciones de librería para decirle al compilador cuál será el nombre de la función cuando las librerías sean enlazadas. Dicha sintaxis es inválida, provocando advertencias y errores del compilador. Este parche elimina la sintaxis incorrecta.
Todos los paquetes GNU deben usar una macro llamada _GNU_SOURCE. Esta macro hace que se incluyan las declaraciones de las funciones de extensión de la librería GNU para que el compilador pueda detectar con facilidad los conflictos de nombres entre funciones. Este parche agrega la macro al código fuente.
patch -Np1 -i ../findutils-4.1.patch |
Prepara Findutils para su compilación:
CPPFLAGS="-Dre_max_failures=re_max_failures2" \ LDFLAGS="-static" ./configure --prefix=$LFS/static |
Continúa compilando el paquete:
make |
Y termina instalando el paquete:
make install |