2009-05-31 15 views
23

Parece que la configuración del entorno $ PATH de xcode es diferente de mi entorno de shell de usuario.

¿De dónde obtiene xcode la configuración de $ PATH y cuál es la mejor manera de agregarla a la ruta de búsqueda?

Respuesta

6

XCode obtiene sus variables de entorno de la misma manera que otros procesos OS X, desde ~/.MacOSX/environment.plist.

Compruebe developer.apple.com/qa/qa2001/qa1067.html para obtener detalles sobre cómo configurar las cosas.

+2

Hmmm ... no tengo un archivo de esa manera. ¿Hay una versión global de esto que se aplique a todos los usuarios? – lajos

+0

Ese archivo es ideal para algunas cosas, pero no parece funcionar para la variable PATH. –

16

si usted está escribiendo un script de shell Ejecutar fase de construcción, sólo se puede hacer:

PATH=${PATH}:/opt/local/bin 

o lo que sea dentro del contenido de la escritura.

+0

gracias, esto es lo que estoy haciendo actualmente, pero espero encontrar una forma "global" que se aplique a todo el proceso de compilación – lajos

+1

Eso no funciona tan bien para, p. scripts de ruby. Especialmente cuando necesitas rbenv en el camino. – tcurdt

+0

@tcurdt Esto funcionó para mí: 'PATH = $ {PATH}:/usr/local/var/rbenv/shims' –

2

Si usted está hablando específicamente sobre el executable search path environment variable named PATH, entonces hay unos pocos lugares que se establece:

  • En your shell settings si se trata de una herramienta de línea de comandos. Dependiendo de su shell, esto podría ser ~/.cshrc, ~/.profile, ~/.bash_profile, etc.
  • En el archivo environment.plist que se mencionó anteriormente.
  • Si está en un depurador, entonces es whatever gdb uses. Creo que gdb leerá los comandos de ~/.gdbinit si existen.
  • XCode le permite establecer variables de entorno dentro del Info page for executables.
+0

Esto no ayudará si necesita pasar las rutas de búsqueda a un script que está tratando de encontrar ejecutables en lugares como/usr/local/bin. Esta es una deficiencia en el soporte de Xcode para los objetivos de construcción externos (Xcode 4.2 al momento de escribir esto). –

1

Xcode no mira el entorno de la ruta de shell.

Eche un vistazo a NSProcessInfo; y haz un NSLog para ver qué sucede.

Si desea que se aplique una ruta a todos los programas gráficos, debe configurar ~/.MacOSX/environment.plist. como se describe.

La forma recomendada de configurar las variables de entorno es en realidad en/etc/paths y etc/paths.d aunque Xcode tampoco recoge estas variables.

Pregunté por este here.

3

En Xcode 5 puede agregar su RUTA como variable a un objetivo o a la configuración del proyecto.

  1. Agregar una variable personalizada con el signo + en la parte superior de la página
  2. Editar el nombre de la variable a ser PATH y añadir su valor preferido (por ejemplo /usr/local/bin para una instalación por defecto de homebrew.

Target Build Settings

+3

Acabo de probar esta solución con Xcode 6, y parece que el IDE sobrescribe silenciosamente la variable PATH con valores a la carpeta Xcode.app. Entonces esto ya no funciona. ¿Hay alguna solución alternativa o una forma de forzar a Xcode a utilizar el conjunto de PATH aquí? – dada

+1

Xcode 6 agrega la ruta de sus propias herramientas antes que la suya. Entonces, por ejemplo, si dice que quiere que PATH sea '/ usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin', Xcode lo configurará en'/Applications/Xcode. app/Contents/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin'. Esto es desafortunado si quiere que su RUTA anule Xcode, pero en realidad es una buena solución si solo quiere agregar '/ usr/local/bin' o algún otro directorio al PATH. –

-2

intente abrir su proyecto Xcode desde el terminal, esto funcionó para mí: open some.xcodeproj

En lugar de abrir xcode y luego cargar el proyecto o hacer doble clic en él.

lo sé ... tonto

+0

no funciona. Creo que abre la apertura del disparador en el fondo – gre

0

La solución más sencilla es añadir la variable PATH en Xcode.

enter image description here

+0

Si alguien se preguntaba dónde se encuentra esto, puede hacer clic en "editar esquema". :RE –

Cuestiones relacionadas