Cuando intenté compilar el archivo sqlite3.c desde el símbolo del sistema del desarrollador de Visual Studio 2017 (MSVC), recibo errores por los archivos de encabezado C. He seleccionado todas las opciones / cargas de trabajo en el instalador de Visual Studio que se requieren para el desarrollo de C & CPP. No estoy seguro de qué referencia me falta. Esta es mi entrada de muestra

cl shell.c sqlite3.c -Fesqlite3.exe

Esta es la respuesta:

Microsoft (R) C / C ++ Optimizing Compiler Versión 19.16.27042 para x86 Copyright (C) Microsoft Corporation. Reservados todos los derechos.

shell.c shell.c (85): error fatal C1083: No se puede abrir el archivo de inclusión: 'stdlib.h': No existe ese archivo o directorio sqlite3.c C: \ Archivos de programa (x86) \ Microsoft Visual Studio \ 2017 \ Professional \ VC \ Tools \ MSVC \ 14.16.27023 \ include \ xmmintrin.h (79): error fatal C1083: No se puede abrir el archivo de inclusión: 'malloc.h': No existe tal archivo o directorio

0
Hari prasad kasavajjala 22 ene. 2021 a las 20:18

1 respuesta

La mejor respuesta

Según Microsoft Docs, el error C1083 se debe principalmente a las siguientes razones.

El archivo no está incluido en la ruta de búsqueda de inclusión

El compilador no puede encontrar el archivo utilizando las reglas de búsqueda indicadas por una directiva #include o #import. Por ejemplo, cuando el nombre de un archivo de encabezado está entre comillas,

#include "myincludefile.h"

esto le dice al compilador que busque el archivo en el mismo directorio que contiene el archivo fuente primero, y luego busque en otras ubicaciones especificadas por el entorno de compilación. Si las comillas contienen una ruta absoluta, el compilador solo busca el archivo en esa ubicación. Si las comillas contienen una ruta relativa, el compilador busca el archivo en el directorio relativo al directorio de origen.

Si el nombre está entre corchetes angulares,

#include

el compilador sigue una ruta de búsqueda definida por el entorno de compilación, la opción del compilador / I, la opción del compilador / X y la variable de entorno INCLUDE. Para obtener más información, incluidos detalles específicos sobre el orden de búsqueda utilizado para encontrar un archivo, consulte la directiva #include (C / C ++) y la directiva #import.

Si sus archivos de inclusión están en otro directorio relativo a su directorio de origen, y usa una ruta relativa en sus directivas de inclusión, debe usar comillas dobles en lugar de corchetes angulares. Por ejemplo, si su archivo de encabezado myheader.h está en un subdirectorio de las fuentes de su proyecto llamado encabezados, este ejemplo no puede encontrar el archivo y causa C1083:

#include

En mi opinión, la razón es: stdio.h estos archivos de encabezado no están ubicados en la ruta no están en la ruta predeterminada de VS2017, lo que hace que VS2017 no pueda encontrar estos archivos de encabezado.

Le sugiero que agregue las siguientes rutas en Properties.

VC ++ Doerctories-> Incluir directorios: C: \ Archivos de programa (x86) \ Windows Kits \ 10 \ Lib \ 10.0.17134.0 \ ucrt

VC ++ Doerctories-> Directorios de bibliotecas: C: \ Archivos de programa (x86) \ Windows Kits \ 10 \ Lib \ 10.0.17134.0 \ ucrt \ x86

Si aún no funciona, puede haber un problema con el SDK de Windows. Le sugiero que vuelva a instalar el SDK de Windows.

1
Barrnet Chou 25 ene. 2021 a las 02:43