Pregunta

¿Hay una manera fácil de obtener tres20 v1.1 para funcionar bajo Xcode 4? Seguí los pasos http://three20.info/article/2011-03-10-xcode4-support Pero eso parece ser para el maestro. Yo uso V1.1 mientras uso el TTLAUNCHER.

El proyecto se basa bien con una compilación normal y funciona perfecta en un iPhone. Pero cuando quiero crear el archivo (para la IPA para su distribución), obtengo 18 errores y 8 advertencias.

El primero es:

../scripts/Protect.command: line 23: cd: /Users/XXX/Library/Developer/Xcode/DerivedData/iDoms-cmyivarwxpbvqdfnyclqdrikrtmw/ArchiveIntermediates/iDoms/BuildProductsPath/Release-iphoneos/../three20/Three20UICommon: No such file or directory

La mayoría de los demás no son "archivo o directorio" en EG:#import "Three20Core/TTGlobalCoreLocale.h"

o 'no declarado (primer uso de la función)' que proviene de 'No hay ningún problema de archivo o directorio que supongo'.

En mis 'rutas de búsqueda de encabezados' tengo:

$(BUILT_PRODUCTS_DIR)/../three20
$(BUILT_PRODUCTS_DIR)/../../three20
../../three20/Build/Products/three20
/usr/include/libxml2

¡Cualquier ayuda será muy apreciada!

¿Fue útil?

Solución

Deberías revisar esta pregunta de stackoverflow.

He reproducido la respuesta aceptada a continuación:

Por lo tanto, parece que la forma más fácil de hacer que los proyectos de Xcode 3.2 antiguos funcionen con Xcode 4 es hacer lo siguiente:

Vaya a las preferencias de Xcode 4 (CMD+,). Seleccione la pestaña "Ubicaciones". Donde dice "construir ubicaciones", seleccione el menú desplegable y elija "Productos de compilación en ubicaciones especificadas por los objetivos" Escribiré un artículo de tres20.info que entran en más detalles sobre esto.

Otros consejos

Solo para agregar a la respuesta de Colin: puede usar la función de proyectos dependientes de Xcode para usar tres20, a pesar de que el sitio web tres20 dice que no es "oficialmente compatible":

  1. En su espacio de trabajo, haga clic con el botón derecho en el espacio vacío en el navegador de su proyecto. Seleccione "Agregar archivos a" mi espacio de trabajo "y seleccione el proyecto tres20 (three20/src/Three20/Three20.xcodeproj). Este es el solamente Proyecto que necesita agregar: no es necesario agregar manualmente los tres subproyectos de tres20.

  2. Seleccione su proyecto en el navegador, vaya a Fases de compilación, abra "Binario de enlace con bibliotecas", haga clic en el "+" en la esquina inferior izquierda y agregue las bibliotecas tres20: libThree20.a, libThree20Core.a, libThree20Network.a, libThree20Style.a, libThree20UI.a, libThree20UICommon.a y libThree20Navigator.a. Esto hará que Xcode construya tres20 cuando construya su proyecto.

  3. Agregar ${BUILD_DIR}/three20 a su ruta de inclusión según la respuesta de Colin: vaya a la configuración de compilación, haga doble clic en "Rutas de búsqueda de encabezado" y agregue ${BUILD_DIR}/three20 (se mostrará como build/three20 Cuando cierras el cuadro de diálogo).

  4. Agregar three20/src/Three20.bundle a sus recursos.

  5. Probablemente también sea una buena idea agregar los flags de enlazador -objc y -Oll_Load si aún no lo ha hecho (el mismo diálogo, configurar "Otros indicadores de enlazador").

Los pasos anteriores son lo suficientemente buenos para compilar el código. Para hacer que el "archivo" funcione también, deberá:

  1. Agregar $(BUILT_PRODUCTS_DIR)/../three20 y $(BUILT_PRODUCTS_DIR)/../../three20 a la configuración de las rutas de búsqueda del encabezado. Si no lo hace, recibirá errores de compilación de que los tres20 encabezados no se pueden encontrar.

  2. Para todos Tres20 proyectos (así que no solo el proyecto de nivel superior), vaya a la configuración de compilación y configure "Skip Install" en sí. Si no lo hace, el proyecto se desarrollará, pero no podrá crear una IPA.

Asegúrese de que el nombre de su producto (seleccione su objetivo, vaya a la configuración de compilación, luego configurar "Nombre del producto") no contenga espacios, de lo contrario archivar no funcionará.

Finalmente, si recibe errores como ld: library not found for -lThree20 Y está utilizando una configuración de compilación personalizada (como ADHOC), asegúrese de agregar la misma configuración de compilación a cada uno de los tres20 proyectos también (solo duplique la configuración de la versión).

Agregue estas dos rutas a sus rutas de búsqueda de encabezado en la configuración de compilación para su objetivo:

"$ (Build_dir)/tres20" "$ (build_dir) /../ tres20"

La primera entrada es necesaria para compilaciones regulares y la segunda entrada es necesaria para archivos.

Es fácil.


Por cierto, para crear un archivo en su directorio de inicio con una lista de todas las variables de entorno de Xcode para el entorno de su objetivo, agregue la siguiente fase de construcción de script de ejecución a su objetivo con contenido: env> ~/xcode-environment.sh

Tenga en cuenta que en este caso, si su proyecto no está logrando la fase de compilación del proceso de compilación, y su script de ejecución viene más tarde, el script no se ejecuta, así que póngalo primero.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top