Variables de Xcode


103

En Xcode, sé que puede obtener variables PROJECT_DIRpara usar en algunas situaciones, como la fase de ejecución de un script. Me pregunto si es posible obtener el tipo de compilación (es decir, Liberar o Depurar ). ¿Algunas ideas?



Respuestas:


147

La mejor fuente es probablemente la documentación oficial de Apple . La variable específica que está buscando es CONFIGURACIÓN.


8
Me encanta la forma en que Xcode se niega a mostrar esa página si escribes "configuración de compilación" en un cuadro de búsqueda; obtienes el OTRO tipo de configuración de compilación, sin referencia a estas variables. Lo mismo ocurre si pones "variables de compilación". Alguien debería enseñarle a Apple cómo escribir un algoritmo de búsqueda :)
Adam

24
Si está intentando crear una "fase de ejecución del script de construcción", puede comenzar este script escribiendo "env" (sin las comillas) como la primera línea de su script de shell bash (o el comando equivalente para el shell que usted ' está usando) y construya su proyecto. Esto generará todas las variables de entorno que están disponibles para usted. Puede usar esto junto con la documentación para asegurarse de obtener los datos que esperaba.
Ryan H.

3
Creo que he perdido media hora tratando de encontrar los documentos que enumeran / explican las variables de entorno disponibles para los scripts. Envié una solicitud de "mejora" preguntando por qué no pueden simplemente poner uno de esos botones redondos de interrogación con un enlace a la página de ayuda adecuada. Gran sugerencia HZC, aunque desearía que no fuera necesario.
Brian

3
También es triste que el $ PROJECT_DIR básico no se mencione en ninguna parte de ese documento oficial. Supongo que es solo un alias (mejor nombrado) para $ SRCROOT.
Ricardo Sanchez-Saez

4
A Apple le gusta reorganizar periódicamente toda su documentación y romper todos los enlaces existentes. Alguien tendrá que buscar el nuevo enlace.
smorgan

20

Aquí hay una lista de las variables de entorno . Creo que es posible que desee CURRENT_VARIANT. Vea también BUILD_VARIANTS.


Ok, entonces cuando uso char * cv = getenv ("CURRENT_VARIANT"); Obtengo NULL. ¿Qué me estoy perdiendo?
Brooks

1
La otra respuesta es correcta. Esto no lo es. CONFIGURACIÓN es lo que quieren.
Baxissimo

Y esa ni siquiera es la lista completa ... la mitad de la verdad
Evils
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.