2009-11-23 18 views

Respuesta

12

No estoy del todo seguro de lo que quiere decir con la línea de comandos de vcbuild, pero si se refiere al compilador de línea de comandos de Visual C++ entonces puede agregar define por agregar/Dxxxx, p.

cl.exe /DSHAREWARE .... 

respuesta adicional basado en los comentarios:

Usted debe ser capaz de establecer la variable de entorno CL con el preprocesador adicional definen:

SET CL=/DSHAREWARE 
devenv .... 

Más detalles se pueden encontrar en MSDN

+0

Tenía en mente devenv.exe. cl solo compila IIRC. devenv también hace enlaces. –

+0

Eso funciona bien, acabo de encontrar la misma respuesta en otro lugar. ¡Gracias de cualquier manera! –

+0

Bueno, entonces deberías aceptar la respuesta para que otros puedan ver que esta pregunta está resuelta ... – HakonB

1

Las #defines se definen en su archivo de proyecto de Visual Studio (archivo .dsp o .vcproj). Este es un archivo de texto simple. Entonces, podría editar el archivo de proyecto desde un script, luego llamar a devenv.exe.

0

En mi caso, necesitaba usar devenv por otras razones, (y funcionaba en cygwin, entonces tenía sed).

puse un símbolo de compilación en las propiedades del proyecto SED_REPLACE_THIS y luego se usa sed para ponerlo en algo significativo (es decir: DONT_CRASH_AS_MUCH)

sed -i 's/SED_REPLACE_THIS/DONT_CRASH_AS_MUCH/g' project.csproj

1

en la configuración del proyecto, agregue la siguiente definición de preprocesador :

$ (MyPreprocessorDefinitions);

a continuación en el archivo .bat *, utilice

REM # define MY_DEF

conjunto MyPreprocessorDefinitions = MY_DEF

devenv.exe ...

REM #undefine MY_DEF

establecer MyPreprocessorDefinitions =

Cuestiones relacionadas