libxml / tree.h no existe tal archivo o directorio

Estoy recibiendo errores de seguimiento.

libxml / tree.h no existe tal archivo o directorio

Ya he agregado libxml2.dylib a mi proyecto, sin embargo, estoy recibiendo este tipo de problemas. Por favor, ayúdame.

Siga las instrucciones aquí , en “Configuración de su archivo de proyecto”.

Configurando su archivo de proyecto

Necesitas agregar libxml2.dylib a tu proyecto (no lo pongas en la sección de Frameworks). En la Mac, lo encontrará en /usr/lib/libxml2.dylib y para el iPhone, querrá el /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.0.sdk/usr/lib/libxml2.dylib versión.

Dado que libxml2 es un .dylib (no es un simpático .framework) todavía tenemos una cosa más que hacer. Vaya a la configuración de comstackción del Proyecto (Proyecto-> Editar configuración del proyecto-> Comstackr) y busque las “Rutas de búsqueda”. En “Rutas de búsqueda de encabezado”, agregue la siguiente ruta:

 $(SDKROOT)/usr/include/libxml2 

También vea la respuesta de OP .

Agregar libxml2 en Xcode 4.3 / 5/6

Agregar libxml2 es un dolor grande, gordo y meticuloso en el culo. Si vas a hacerlo, hazlo antes de llegar demasiado lejos en la construcción de tu proyecto.


Debe agregarlo de dos maneras :

1. Configuración de objectives

Haga clic en su objective (no en su proyecto) y seleccione Build Phases .

Haga clic en el triángulo revelador titulado Link Binary With Libraries . Haga clic en + para agregar una biblioteca.

Desplácese hasta el final de la lista y seleccione libxml2.dylib . Eso agrega la biblioteca libxml2 a su proyecto.

2. Configuraciones del proyecto

Ahora tiene que decirle a su proyecto dónde buscarlo tres veces más.

Seleccione la Build Settings tab .

Desplázate hacia abajo a la sección de Linking . Debajo de las columnas de proyectos, haga doble clic en la fila Other Linker Flags . Haga clic en + y agregue -lxml2 a la lista.

Aún más.

En la misma pestaña, desplácese hacia abajo a la sección Search Paths .

Debajo de la columna de proyectos en la fila Framework Search Paths del Framework Search Paths agregue /usr/lib/libxml2.dylib .

En las Header Search Paths y en la fila User Header Search Paths agregue $(SDKROOT)/usr/include/libxml2 .

En esos dos últimos casos, asegúrese de que la ruta se ingrese en Debug and Release.

3. Limpio

En el menú Product selecciona Clean .

Entonces, si yo fuera tú (y admitámoslo, probablemente lo sea), dejaría Xcode y me iría. Cuando regrese y lance debería estar listo para partir.

Para Xcode 6, tuve que hacer lo siguiente:

1) añadir la biblioteca “libxml2.dylib” a TARGET de mi proyecto (Fases de comstackción -> Enlace binario con bibliotecas)

2) agregue “$ (SDKROOT) / usr / include / libxml2” a las Rutas de búsqueda de encabezado en el TARGET (Configuración de comstackción -> Rutas de búsqueda de encabezado)

Después de esto, el objective debe construir con éxito.

También necesita agregar /usr/include/libxml2 a su ruta de inclusión.

Forma el enlace de @Matt Ball,

Me pareció útil para mí.

Necesitas agregar libxml2.dylib a tu proyecto (no lo pongas en la sección de Frameworks). En la Mac, lo encontrará en /usr/lib/libxml2.dylib y para el iPhone, querrá el /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS2.0.sdk/usr/lib/libxml2.dylib versión.

Dado que libxml2 es un .dylib (no es un simpático .framework) todavía tenemos una cosa más que hacer. Vaya a la configuración de comstackción del Proyecto ( Project->Edit Project Settings->Build ) y busque las ” Search Paths “. En “Rutas de búsqueda de encabezado”, agregue la siguiente ruta en la Mac:

  /usr/include/libxml2 

Ray Wenderlich tiene una publicación en el blog sobre el uso de gdata que resuelve este problema. Básicamente estos simples pasos:

En XCode, haga clic en Proyecto \ Editar configuración del proyecto y asegúrese de que estén marcadas “Todas las configuraciones”.

Busque la configuración Rutas de búsqueda \ Rutas de búsqueda de encabezado y agregue / usr / include / libxml2 a la lista.

Finalmente, encuentre la sección Vinculación \ Otros indicadores del enlazador y agregue -lxml2 a la lista.

publicación original: leer y escribir documentos xml con gdataxml

Encontré lo mismo, tuve que agregar $ (SDKROOT) / usr / include / libxml2 para el último Xcode (4.3.x). TAMBIÉN, lo que me mantuvo dando vueltas durante horas es el hecho de que estaba modificando el “OBJETIVO” y no el “PROYECTO” (la nueva interfaz de usuario de Xcode es tan compleja que es fácil pasar esto por alto). ¡Necesitas modificar el PROYECTO!

Otra solución. siga todos los pasos en la ruta de búsqueda del encabezado, etc. y asegúrese de que la configuración seleccionada en el proyecto en la configuración del proyecto sea la correcta. Cuando hace doble clic en la configuración de comstackción del proyecto, puede que esté cambiando en Configuración de distribución, pero está intentando agregar la ruta de búsqueda del encabezado en la configuración de “Depuración”. Por lo tanto, asegúrese de estar en la configuración correcta. o elige todas las configuraciones

Descubrí que con xCode 4.3.2 tenía que ingresar $ (SDKROOT) / usr / include / libxml2 en el campo de Búsqueda de encabezado en lugar de simplemente / usr / include / libxml2

A partir de Mavericks (OS X 10.9) el directorio / usr / include se ha ido . La mitad de las respuestas aquí son obsoletas, ya que la aplicación no comstackrá hasta que clasifique el directorio de inclusión.

Resolví el problema creando un enlace simbólico al SDK de MacOSX en la terminal, usando el siguiente comando:

 sudo ln -s /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include /usr/include 

La aplicación ahora comstack de nuevo.

No estoy seguro de cuál es la diferencia, pero agregue la ruta de inclusión al proyecto, así como el objective.

En Mountain Lion me enfrentaba al mismo problema, que se resolvió añadiendo /usr/include/libxml2 para incluir rutas con el indicador “recursivo”, /usr/include/libxml2 si todo lo anterior no es fructífero.

Tuve este problema cuando volví a abrir un proyecto (que se desarrolló en XCode 3. algo en Leopard) después de actualizar a Snow Leopard y XCode 3.2. Curiosamente, solo afectó a algunos tipos de comstackciones (las comstackciones de los emuladores funcionaron bien, las de los dispositivos me dieron el error). Y tengo libxml2 en / usr / include, y de hecho contiene libxml / tree.h.

Incluso la magia “Limpiar” no funcionó, pero “Cachés vacíos …” en el menú “XCode” (entre el logotipo de Apple y File) hizo el truco (¿estaba ese menú allí en versiones anteriores?). Me gana la razón, pero después de una limpieza no hubo más quejas con respecto a libxml / tree.h

Seleccione también “Buscar siempre rutas de usuario” a YES. En XCode 4.3.3 es por defecto NO

Por favor, siga los siguientes pasos

  1. Añadiendo libxml2
    libxml2.dylib se puede encontrar en mac machin en /usr/lib/libxml2.dylib

  2. Cambiar “Rutas de búsqueda de encabezado”
    Haga clic en [Nombre del proyecto] (en el panel izquierdo) -> Proyecto -> Configuraciones de comstackción -> Seleccionar todo (el valor predeterminado es Básico)
    Escriba rutas de búsqueda de encabezado en el cuadro de búsqueda
    Haga doble clic en Rutas de búsqueda de encabezado -> + -> “$ (SDKROOT) / usr / include / libxml2”

  3. Agregue -lxml2 a “Otra bandera del enlazador”
    Busque “Otros indicadores del enlazador” como buscar en el paso 2
    haga clic en la fila “Otros Indicadores del Enlazador”. Haga clic en “+” y agregue “-lxml2” a la lista.

  4. Cambie su tipo de proyecto a ARC -> No, es decir, conteo de referencia automático a No Puede buscar ARC como en el paso 2

Xcode 4.5 He utilizado la solución de The CW por completo. La única excepción es que $ (SDKROOT) / usr / include / libxml2 no funcionó, y tuve que agregar “$ (SDK_DIR)” / usr / include / libxml2 a las Rutas de búsqueda de encabezado de proyectos y Rutas de búsqueda de encabezado de usuario . Después de que el proyecto se construya con éxito.

EDITAR: Tengo un proyecto de Google GData dentro de mi proyecto (llamado MyProject) (mi proyecto usa). GData requiere libxml. Para construir el proyecto MyProject con éxito, agrego “$ (SDK_DIR)” / usr / include / libxml2 a las rutas de búsqueda de encabezado de MyProject y no a las rutas de búsqueda de encabezado de GData . Si no lo agregué a MyProject, el proyecto no se compiló ).

Encontré este tutorial visual útil.

Blockquote Agregar libxml2 en Xcode 4.3.x

Agregar libxml2 es un dolor grande, gordo y meticuloso en el culo. Si va a hacerlo, hágalo antes de llegar demasiado lejos en la construcción de su proyecto.

Así es cómo.

Configuración de destino

Haga clic en su objective (no en su proyecto) y seleccione “Crear fases”. Haga clic en el triángulo revelador titulado “Enlace binario con bibliotecas”. Haga clic en “+” para agregar una biblioteca. Desplácese hasta el final de la lista y seleccione “libxml2.dylib”. Eso agrega a la biblioteca libxml2 2 su proyecto … pero espera.

Configuración del proyecto

Ahora tiene que decirle a su proyecto dónde buscarlo tres veces más.

Seleccione la “pestaña Configuración de comstackción”. Desplácese hacia abajo a la sección “Vinculación”. Debajo de las columnas de su proyecto, haga doble clic en la fila “Otras banderas enlazadoras”. Haga clic en “+” y agregue “-lxml2” a la lista.

Aún más.

En la misma pestaña, desplácese hacia abajo a la sección “Rutas de búsqueda”. Debajo de la columna de su proyecto en la fila “Rutas de búsqueda del marco” agregue “/usr/lib/libxml2.dylib”.

En las “Rutas de búsqueda de encabezado” Y en la fila “Rutas de búsqueda de encabezado de usuario”, agregue “$ (SDKROOT) / usr / include / libxml2”. En esos dos últimos casos, asegúrese de que la ruta se ingrese en Debug AND Release.

Entonces. En el menú “Producto”, selecciona “Limpiar”.

Esto está funcionando y para Xcode5 también! ¡Gracias!

No coloque libxml2.dylib debajo de la carpeta de marcos póngalo debajo de la raíz justo debajo de la raíz (icono azul superior izquierdo)

Luego haga clic en el proyecto (icono azul SUPERIOR), vaya a Configuración de comstackción, en el cuadro de búsqueda escriba “Rutas de búsqueda de encabezado” y luego agregue el “$ (SDKROOT) / usr / include / libxml2”

Este código resuelve mi problema. Espero que te ayude a solucionar este problema.

@Aqib Mumtaz: Lo hice funcionar siguiendo las instrucciones en la nota anterior de Parris titulada “Agregar libxml2 en Xcode 4.3 / 5/6”. El paso para usar una ruta de búsqueda de Framework no funciona y el comstackdor se queja. Grandes felicitaciones para ese chico de todos modos!

Estoy usando Xcode 6.2b3

Independientemente de la versión de Xcode que esté utilizando, tiene errores. No siempre asum que los errores de comstackción son reales. Hay muchas veces cuando no sigue las rutas de búsqueda de encabezado e incluye claramente enumerados no se encuentran. Peor aún, los errores que resultan tienden a apuntarle en diferentes direcciones, por lo que pierde mucho tiempo dinking con distracciones. Con eso dicho…

Recomiende pasos de bebé comenzando con esto exactamente …:

  1. crear una sola ventana Mac OS X Proyecto Cocoa llamado “Bench Test”
  2. agregue XpathQuery en el directorio de origen de su proyecto directamente en Finder
  3. haga clic en el icono de la pequeña carpeta debajo del botón de cerrar rojo de la ventana del proyecto
  4. arrastre XpathQuery (carpeta si la tenía) en los activos del proyecto a la izquierda de la ventana de proyecto
  5. arrastre /Applications/Xcode/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk/usr/lib/libxml2.2.dylib a los activos de su proyecto, en la parte inferior. Esto lo agregará a sus “Fases de comstackción” -> “Enlace binario con bibliotecas” de la manera más fácil
  6. haga clic en el ícono del proyecto “Bench Test” en la columna de activos del proyecto, arriba a la izquierda
  7. busque “Otros indicadores del enlazador” en “Configuración de comstackción”
  8. agregue “-lxml2” (sans “”) a “Otros indicadores de vinculación” en la columna del icono del proyecto “Prueba de banco”
  9. busque “búsqueda de encabezado” en “Configuración de comstackción”
  10. agregue “$ (SDKROOT) / usr / include / libxml2” (sans “”) a “Rutas de búsqueda de encabezado” en la columna del icono del proyecto “Prueba de banco”
  11. agregue “$ (SDKROOT) / usr / include / libxml2” (sans “”) a “Rutas de búsqueda del encabezado del usuario” en la columna del icono del proyecto “Prueba de banco”

Notas:

  • El mío no funcionaría hasta que añadí esa ruta de búsqueda a “Rutas de búsqueda de encabezado” y “Rutas de búsqueda de encabezado de usuario”.
  • Para acceder a libxml2.2.dylib en el buscador, deberá hacer clic con el botón derecho en su icono de Xcode y seleccionar “Mostrar contactos del paquete” (editorial: qué truco … meter toda esa basura en la aplicación)
  • Prepárese para cambiar el enlace libxml2.2.dylib. El que está dentro de Xcode se usa intencionalmente para garantizar que Xcode obtenga algo que sepa y, en teoría, se haya probado. Es posible que desee utilizar el dylib en el sistema más tarde (leer en este hilo)
  • Como estoy usando Xcode 6.2b3, puedo tener un libxml2.2.dylib más nuevo. El tuyo podría ser nombrado ligeramente diferente. Simplemente busque en la carpeta algo que comience con “libxml” y termine con “.dylib” y así debería ser. También puede haber un alias como “libxml2.dylib”. No lo use de inmediato ya que resolver un alias agrega otra variable en la ecuación de Xcode “lo que podría tener errores”.
  • Por motivos de cordura, hago alias de las bibliotecas externas, las cambio de nombre para indicar cuál son y las mantengo en el mismo nivel que el archivo del proyecto en Finder. Si cambian la ubicación, cambian el nombre, etc., el alias tendrá en Get Info, la ruta completa del archivo original para el trabajo de detección posterior para que el proyecto se vuelva a comstackr y se vuelva a vincular. (los enlaces simbólicos se rompen demasiado fácilmente y no son naturales para Mac)
  • Lo último, y muy importante, vea http://www.cocoawithlove.com/2008/10/using-libxml2-for-parsing-and-xpath.html donde puede descargar XpathQuery y obtener algo más de bondad.

espero que esto ayude.

Si está desarrollando algo para Veteranos, digamos una aplicación para iPhone / iPad o Mac, y está trabajando contra algo llamado “MDWS” o “VIA” que son interfaces basadas en SOAP para el sistema de registros médicos … contácteme

Lo solucioné en tres pasos en Xcode 8.0 + Unit Test Project

1) Agregué el archivo libxml a Build Fhases. Sigo este enlace

2) -ObjC otras banderas de -ObjC como -ObjC (para proyectos y proyectos de prueba)

3) configuro la ruta de búsqueda de encabezado como "${SDKROOT}/usr/include/libxml2" (No olvide las comillas dobles en ambos lados) (Para proyectos y proyectos de prueba)

Uno de ellos resolverá el problema. Si no, debes aplicar los tres de los anteriores.

Pensé que había agregado incorrectamente, entonces me di cuenta de que el problema es que no es compatible con el arco, así que consulte el soporte aquí, salvavidas -> http://www.michaelbabiy.com/arc-compliant-gdataxml-library/