Estoy trabajando en cygwin. La mayoría de los comandos de Unix funcionan bien. También puedo compilar con g ++ y gcc, pero obtengo el siguiente error cuando ejecuto make:
/cygdrive/b/tpm/src
$ make -f makefile.mak
"c:/program files/mingw/bin/gcc.exe" -Wall -Wnested-externs -ggdb -O0 -c -
DTPM_WINDOWS -I"c:/program files/MinGW/include" -I"c:/program
files/openssl/include" -I../utils -I. -DNO_BIT_FIELD_STRUCTURES AlgorithmCap.c -o AlgorithmCap.o
make: *** [makefile.mak:85: AlgorithmCap.o] Error 1
Tenga en cuenta que tengo el paquete make descargado y agregué el contenedor a la ruta.
c:/program files/mingw/bin/gcc.exe
no es un compilador cygwin o compilador cruzado. Estás mezclando cygwin make con un compilador no cygwin, y el no funciona.Respuestas:
El error principal se muestra en esta línea:
Este error muestra que el cygwin
make
encuentra la ruta del compilador de C es decir,$(CC)
enC:\Program Files\mingw\bin\gcc.exe
. Aquí OP instaló mingw y cygwin en la misma máquina. Cuando el instalador correspondiente instala cygwin y mingw agrega el/bin
carpeta en%PATH%
Variable del entorno del sistema. De ahí que en tiempo de compilación, el cygwinmake
agarra el primerogcc.exe
ruta que está en el directorio mingw y aparece el error.Para eliminar la confusión del camino, el
%PATH%
La variable de entorno se debe configurar correctamente. Encuentre más detalles sobre cómo editar las variables de entorno en los enlaces a continuación. Aquí te doy un esquema simple. Abrir cuadro de diálogo Ejecutar con Ganar + R . Tipocontrol.exe
en ella y pulsa enter. Vaya a Sistema y seguridad & gt; Sistema & gt; Configuración avanzada del sistema & gt; Variables de entorno & gt; Variables del sistema & gt; Camino.Haga doble clic en la variable "Ruta". Puedes ver una ventana "Editar variable de entorno". Eliminar los dos caminos
C:\cygwin
yC:\Program Files\mingw\bin
con Borrar llave.Ahora haga dos archivos por lotes uno cygwin.bat y mingw.bat. Se puede hacer en un archivo, solo lo hago simple. Copie las siguientes líneas en los archivos por lotes correspondientes. Los comandos configurarán el entorno para compilar.
Preguntas y respuestas similares:
fuente
make -f makefile.mak
. También intenta hacer otros proyectos como mintty en GitHub.