Estoy haciendo nativas de iOS de la aplicación utilizando SUP.Según la documentación; he incluido la biblioteca y dada la ruta de enlace en Xcode.
Mientras que la construcción de llegar de error siguientes:

Undefined symbols for architecture i386:
"_deflate", referenced from:
PlatCompress(enumCompressOperation, CompressCookie*, void*, long) in         libMo.a(tlplatcompress.o)
"_deflateEnd", referenced from:
PlatCompress(enumCompressOperation, CompressCookie*, void*, long) in libMo.a(tlplatcompress.o)
"_deflateInit_", referenced from:
StartCompression(enumCompressOperation, unsigned char, long (*)(void*, void*, long), void*, void**) in libMo.a(tlplatcompress.o)
"_deflateParams", referenced from:
StartCompression(enumCompressOperation, unsigned char, long (*)(void*, void*, long), void*, void**) in libMo.a(tlplatcompress.o)
"_inflate", referenced from:
PlatCompress(enumCompressOperation, CompressCookie*, void*, long) in libMo.a(tlplatcompress.o)
"_inflateEnd", referenced from:
PlatCompress(enumCompressOperation, CompressCookie*, void*, long) in libMo.a(tlplatcompress.o)
"_inflateInit_", referenced from:
StartCompression(enumCompressOperation, unsigned char, long (*)(void*, void*,  long), void*, void**) in libMo.a(tlplatcompress.o)
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)

Por favor me ayude a resolver este error.Soy nuevo en el nativo de iOS desarrollo de la SUP.

Gracias.

InformationsquelleAutor bapi | 2013-08-05

4 Comentarios

  1. 144

    Yo también tenía el mismo error.

    Agregar libz.dylib marco de la meta -> Fases de construcción ficha -> Link Binarios Con Bibliotecas,

    la esperanza de que va a trabajar para usted.

    Nota: Si libz.dylib no se encuentra, trate de añadir libz.tbd

    • ¿qué es libz.dylib & ¿qué hacer?
    • Esto no funciona en la última versión de Xcode.
    • Trabajó para mí en Xcode7, iOS 9.1. Mi falta libs se libz.tbd y libsqlite3.tbd
    • no hay ningún «libz.dylib» pero agregar libz.tbd y funciona 🙂
    • Gracias por la respuesta @Dhaval. También puede usted por favor me ayude a entender lo que es libz.tbd y cómo se ha resuelto este problema.
  2. 39

    Comenzando con Xcode 7, en lugar de la adición de libz.dylib, usted debe hacer esto:

    • Ir al proyecto Build Settings ficha
    • De búsqueda para Other Linker Flags
    • Agregar -lz como un enlazador de la bandera (ver captura de pantalla)
    • En el Product menú, seleccione Clean antes de la construcción de nuevo

    Undefined symbols for architecture i386:

    • Muchas gracias, me has salvado la vida 🙂
    • omg gracias!!
    • esto funciona.. para la última versión de XCode [email protected]
    • conseguir el mismo problema en Xcode 8.2.1 para añadir un marco de trabajo personalizado en una aplicación …. pleasehelp
    • Por favor, añada una explicación en cuanto a por qué esto resuelve el problema.
    • Sé que el manual para ld explica el -l[x] indica el vinculador cómo encontrar el lib[x].dylib (en este caso, libz.dylib). Alguien que entienda de este tema mejor que yo debería agregar una explicación. Me tropecé a través de la solución después de otras respuestas aquí no funciona, y publicado lo que hice.
    • siendo cierto para Xcode 9. Ya sea el uso de banderas o añadir el marco de trabajo.
    • Funcionó !!!!! Usted salvó mi trabajo !!

  3. 19

    Undefined symbols for architecture i386:

      "_deflate", referenced from:
    PlatCompress(enumCompressOperation, CompressCookie*, void*, long) in         libMo.a(tlplatcompress.o)
    "_deflateEnd", referenced from:
    PlatCompress(enumCompressOperation, CompressCookie*, void*, long) in libMo.a(tlplatcompress.o)
    "_deflateInit_", referenced from:
    StartCompression(enumCompressOperation, unsigned char, long (*)(void*, void*, long), void*, void**) in libMo.a(tlplatcompress.o)
    "_deflateParams", referenced from:
    StartCompression(enumCompressOperation, unsigned char, long (*)(void*, void*, long), void*, void**) in libMo.a(tlplatcompress.o)
    "_inflate", referenced from:
    PlatCompress(enumCompressOperation, CompressCookie*, void*, long) in libMo.a(tlplatcompress.o)
    "_inflateEnd", referenced from:
    PlatCompress(enumCompressOperation, CompressCookie*, void*, long) in libMo.a(tlplatcompress.o)
    "_inflateInit_", referenced from:
    StartCompression(enumCompressOperation, unsigned char, long (*)(void*, void*,  long), void*, void**) in libMo.a(tlplatcompress.o)
    ld: symbol(s) not found for architecture i386
    clang: error: linker command failed with exit code 1 (use -v to see invocation)

    También tuve el mismo problema,creo que no son de la libz.dylib biblioteca.

    Para hacerlo:

    1. ir a la sección orientación
    2. Fases de construcción ficha
    3. Enlace Binarios Con Bibliotecas
    4. haga clic en el botón +
    5. búsqueda libz.dylib
    6. haz clic en el botón add.
    • Muy bien contestado. Pensamiento profundo. Gracias
    • Golpear en el blanco de los ojos !!!!
  4. 10

    1.vaya a la sección orientación

    2.Fases de construcción ficha

    3.Enlace Binarios Con Bibliotecas

    4.haga clic en el botón +

    5.búsqueda libz.tbd (o libz.dylib)

    6.haga clic en el botón add.

    • Su respuesta no es diferente a las otras respuestas, así que ¿por qué has publicado?
    • Única diferencia que he hecho es «5.búsqueda libz.tbd (o libz.dylib)» creo que libz.tbd es el nuevo nombre para libz.dylib

Dejar respuesta

Please enter your comment!
Please enter your name here