Estoy tratando de crear un Makefile para una pequeña utilidad Perl que escribí, y estoy luchando por encontrar una manera de encontrar dónde instalar mi página de manual cuando makese ejecuta como usuario no root .
Actualmente estoy analizando la salida de manpathpara encontrar la primera ruta en el $HOMEdirectorio ... y casi funciona bien.
Los caminos que he encontrado son ~/many~/share/man
El único problema es que si esos directorios no existen en primer lugar, manpathno genera ninguno de ellos.
Preguntas
- ¿Hay alguna forma portátil de averiguar dónde debo instalar las páginas man en el directorio $ HOME del usuario?
- Si no, ¿cuál de ellos debería preferirse?

manpathadvertencias sobre laMANPATHconfiguración, puede pasar la-qopción.mandónde mirar. Estoy buscando una forma genérica y portátil para una instalación genérica (es decir, dónde semanbusca una configuración estándar)echo $MANPATHy vea lo que eso muestra. Esos son buenos lugares para comenzar a buscar, o usar elmanpathcomando como lo mostré en mi respuesta.Responde con una descripción
Estoy ejecutando Cygwin en Windows 7. Cuando intento
No consigo nada Aquí está mi forma portátil de encontrar dónde poner nuevas
manpáginas.(Una nota sobre ese comando loco está al final de esta respuesta).
Simplemente podría reemplazar
/con~. Otra posibilidad se encuentra en la sección Otra nota a continuación.En mi máquina, el
findcomando regresó:Para mí, eso significaba que había dos posibilidades:
/share/many/usr/man.Elegí usar
/usr/man, que no lo harías, pero necesitaba explorar un poco más.Entonces, donde tenía los nuevos
manarchivos en undoc/subdirectorio de mi directorio de trabajo, uséAhora, podría llegar a mi "manual" escribiendo
Si no ve un candidato probable, puede eliminar esta parte o cambiarla, por ejemplo
-maxdepth 3, a , o4, o5, lo profundo que sea necesario para encontrar lo que necesita. Cuando lo hice3, encontré otros dos candidatos/var/cache/manyusr/share/man, pero ya había encontrado una solución que funcionaba, así que no me metí con ellos.Otra nota
Creo que
/share/man/man1o/var/cache/manestaría disponible para usuarios no root, como lo solicitó. Por favor, corríjame si estoy equivocado.La nota prometida al pie
Tenga en cuenta que usé la
-maxdepth 2opción confind, porque pensé que elmandirectorio estaría dentro de dos directorios de la raíz del sistema de archivos, y no quería obtener demasiados directorios extraños que de alguna manera tenían la subcadenaman, como lo hizo/lib/gnome-comander.El material adicional alrededor del
findestá allí para suprimir cualquierPermission deniederror en caso de que no tenga acceso asuosudo. Aquí hay una gran descripción de lo que está sucediendo. (Busque la línea que comienza con "gniourf_gniourf").fuente
He instalado algunas aplicaciones que he compilado, con los respectivos
configures configurados para instalar en${HOME}/usr/local.Ahora encuentro que tengo directorios
con páginas de manual
gnuplot.1,gnuplot-ja.1,python3.1,python3.5.1,libpng.3,libpngpf.3,zlib.3,png.5, por lo que supongo (dado mi prefijo) que es un lugar bastante estándar para las aplicaciones instaladas localmente.Es entonces una ubicación candidata para los casos en que uno tiene que elegir manualmente el
mandirectorio local .Por supuesto, uno puede agregar rutas arbitrarias (y debería hacerlo incluso en el caso habitual mencionado) para
manpáginas con(ver esto )
fuente