iphone - ".../libtool: can 'T locate file for: -lxml2"
Habe ich 2 Projekte in einem xcode-Arbeitsbereich. Eine ist eine statische Bibliothek und die anderen eine Verwendung der statischen Bibliothek.
In die statische Bibliothek, die ich Hinzugefügt die GDataXMLNode.h und GDataXMLNode.m-Dateien, die ich in der Haupt-Projekt. Die GDataXMLNode.h ist eine öffentliche Datei, so dass es sichtbar in der Haupt-Projekt. Ich habe auch mit dem Ziel, beide Projekte mit libxml2.dylib. Und ich auch in der Header-Suchpfade und User Header Search Paths den Speicherort /usr/include/libxml2.
Obwohl diese, erhalte ich eine Apple Mach-O-Bibliothekar Fehler:
/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/libtool: can't locate file for: -lxml2
/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/libtool: file: -lxml2 is not an object file (not allowed in a library)
/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/libtool: file: /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.3.sdk/usr/lib/libxml2.dylib is a dynamic library, not added to the static library
/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/libtool: file: /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.3.sdk/usr/lib/libxml2.dylib is a dynamic library, not added to the static library
/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/libtool: file: /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.3.sdk/usr/lib/libz.dylib is a dynamic library, not added to the static library
/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/libtool: file: /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.3.sdk/usr/lib/libz.dylib is a dynamic library, not added to the static library
Command /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/libtool failed with exit code 1
Wissen Sie, wie kann ich dieses Problem beheben?
Dieser war schnell, obwohl ich versuche seit gestern. Ich Schaffe es, um es zu beheben, durch das entfernen dieser aus dem Build-Einstellungen: OTHER_LDFLAGS = "-lxml2"; Wünsche Euch allen das beste!
InformationsquelleAutor Bogdan | 2011-09-20
Du musst angemeldet sein, um einen Kommentar abzugeben.
Hatte ich genau denselben Fehler vor kurzem. Als Sie gefunden wird, entfernen "-lxml2" von der "Anderen Linker-Flags" in den Build-Einstellungen geholfen, die Fehler beheben. Dies gilt, wenn Sie den Aufbau einer statischen Bibliothek. Sie wird müssen, dass die linker-flag ("-lxml2") in jedem Ziel, das tatsächlich enthält die statische Bibliothek. Zum Beispiel, wenn Sie unit-tests für Ihre statische Bibliothek haben wie ich (also MyStaticLibraryProjectTests), dann würden Sie brauchen, um stellen Sie sicher, dass Sie die linker-flags an das MyStaticLibraryProjectTests Ziel, aber nicht den eigentlichen MyStaticLibraryProject Ziel. Mehr als oft nicht ich in der Regel vergessen, um ein bestimmtes target auswählen, wenn ich meine Build-Einstellungen Registerkarte. Ich in der Regel davon ausgehen, dass wenn ich auf das große Blaue Symbol Projekt, dass die build-Einstellungen sind nur für das gesamte Projekt, aber es ist sehr wichtig wählen Sie den richtigen Ziel-beim ändern dieser Einstellungen.
Früh auf die meisten Projekte in der Regel nicht nur ein einzelnes Ziel, aber wie Sie weiter Fortgeschritten es ist möglich, mehrere Ziele für jedes Projekt. Hoffe, das hilft.
InformationsquelleAutor TPoschel