Configurar variables de entorno en cmd no tiene ningún efecto

Configurar variables de entorno en cmd no tiene ningún efecto

Estoy intentando configurar rutas a las herramientas VS para ejecutarlas en la línea de comandos, segúnhttps://msdn.microsoft.com/en-us/library/x4d2c09s.aspx

Ejecuto vcvarsall x64desde el símbolo del sistema elevado y verifico el contenido de la INCLUDEvariable:

ingrese la descripción de la imagen aquí

Luego cierro el símbolo del sistema, lo abro nuevamente y verifico la INCLUDEvariable:

ingrese la descripción de la imagen aquí

Como puede ver, los cambios se perdieron cuando cerré CMD. ¿Cómo me aseguro de que lleguen al entorno del sistema?

Estoy usando Win 8.1 si es importante.

Respuesta1

Es porque los archivos por lotes que ejecuta se utilizan Setpara configurar las variables de entorno ( C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\amd64\vcvars64.bates lo que se ejecuta cuando ejecuta vcvarsall x64).

Pero Setsolo establece variables para la sesión de línea de comando actual. Debe usarlo Setxpara que se "pegue" entre sesiones de línea de comando.

Para obtener más información, quizás consulte estas otras preguntas y respuestas de SU:

Editar después de los comentarios:

"Pero los comandos establecidos estaban en el script predeterminado"

VCVarsAll está diseñado para ejecutarse para configurar el entorno para la compilación/acción única que está a punto de realizar, no para configurarlas de forma permanente.

Visual Studio instala entradas específicas de "símbolo del sistema" para acceder a las herramientas (desde su enlace: "...y luego elija uno de los símbolos del sistema nativos o entre herramientas"), y esos accesos directos especiales al símbolo del sistema ejecutan a/ el archivo por lotes para garantizar que todo esté configurado correctamente cuando utilice esos accesos directos.

Puedes replicar esos atajos con los tuyos propios...

Cree un nuevo acceso directo a cmd /k "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\vcvarsall.bat" x64, que ejecutará el archivo por lotes (usando x64 como opción de entorno) y luego mantenga abierta la ventana de la línea de comandos.

Luego use ese acceso directo para abrir el símbolo del sistema cuando desee usar las herramientas.

Respuesta2

Sí, puedes extraer el entorno al archivo:

cmd /C "C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\VC\Auxiliary\Build\vcvars64.bat" && set > d:\t.txt

Luego puede incluir este archivo en el archivo MAKE directamente o utilizar otra opción que se ajuste a sus necesidades.

información relacionada