Solución: no se especificaron objetivos y no se encontró ningún archivo.

Ya sea que esté trabajando con Ubuntu, Debian o Red Hat, es posible que vea un error que dice: *** No se especificaron objetivos y no se encontró ningún archivo. Detener. Dado que este es un problema general que afecta a GNU Make en su conjunto, es posible que lo vea en la implementación de Unix sin contar. Significa que su directorio de trabajo actual no contiene un archivo llamado Makefile o Makefile. Afortunadamente, este es un error fácil de corregir.

Método 1: buscar composición en el directorio actual

Es posible que desee probar esto Hacer comando una vez más en el directorio actual para ver si obtiene el mismo error. Esto es especialmente importante si abrió una nueva ventana de terminal y ya intentó encontrar el directorio correcto o utilizó el comando CD de la última vez que intentó ejecutar GNU.

Suponiendo que lo haga, pruebe el ls o dir comando para ver qué archivos están en su directorio actual. Es posible que no se encuentre en la parte correcta del árbol de directorios. Si nota que ve directorios relacionados con su directorio raíz / o en su directorio de inicio ~, entonces querrá ejecutar el comando cd para ubicarse en el lugar correcto para ejecutar el comando done.

Lo más probable es que se encuentre más lejos de donde espera estar. Por ejemplo, intentamos ejecutar desde el directorio / var / crash y descubrimos que no funcionaba en absoluto. No se puede esperar que se ejecute desde aquí, porque los archivos solo en este lugar en particular provienen de informes de fallas no relacionados.

Lo más probable es que desee ejecutar su línea de comando desde un directorio ubicado en algún lugar dentro de su directorio de inicio. Por ejemplo, si estuviera compilando la última versión de GNU nano desde la fuente, probablemente tendría un directorio ubicado en ~ / nano-2.9.6 con el que podría hacer un CD y ejecutarlo nuevamente. Quizás quieras intentar correr ls una vez más antes de intentar asegurarse de que una composición se encuentre dentro del directorio en el que puede construir.

Tenga en cuenta que primero debe configurar la instalación. El comando de configuración crea el entorno perfecto para que el compilador GNU tenga éxito. Si ni siquiera encuentra un archivo en el directorio del proyecto correcto, ejecútelo ./configurar mientras todavía estás dentro y el Hacer orden. Si esto se compila correctamente, entonces puede instalar su proyecto con sudo realizar la instalación, pero recuerde que no quiere tomar nada como root, por lo que no quiere ejecutar sudo make o ejecutar nada más fuera de la instalación.

Método 2: especificar una composición personalizada

Suponiendo que solucionó el problema, no tiene nada más que hacer. Sin embargo, hay dos casos de uso especiales a considerar si el método anterior no corrigió su problema. Estos implican escribir su propia composición para un proyecto que estaba configurando manualmente.

Puede especificar un archivo MAKE personalizado llamado de otro modo que no sea literalmente MAKE usando la opción -fa. Por ejemplo, si tuviera un archivo make de respaldo llamado makefile.bak, entonces podría especificarlo ejecutando hacer -f makefile.bak desde la línea de comando. Puede reemplazar cualquier nombre de archivo con makefile.bak y podría incluir la opción -ia si desea ignorar los errores en la composición personalizada o si está desactualizado mientras se ejecuta el compilador. Por lo general, esto no se recomienda, ya que probablemente desee editar su archivo si hay algún problema con él.

El otro caso de uso que está estrechamente relacionado con un caso que involucra mayúsculas y minúsculas. El siguiente es un archivo separado sobre la forma de hacer negocios de Unix:

  • Makefile
  • makefile
  • makeFile
  • MakeFile
  • MakefilE

Es posible que los programas configurados a medida no coincidan con las mayúsculas ocasionales. Si lo ha escrito a mano para un proyecto de codificación en el que está trabajando, probablemente querrá cambiarle el nombre, aunque podría usar la opción – ia para asegurarse de que GNU make pueda encontrarlo. Recuerde que si ha escrito todo correctamente, puede ejecutar ./configure desde su propio proyecto para forzarlo a generar el entorno adecuado y evitar este problema, en primer lugar.

Deja un comentario