2012-03-30 10 views
0

Notwendigkeit, QR-Code von iOS für verschiedene Zeichenfolgen zu generieren. Ausprobiert die folgende Bibliothek:iOS-QR-Code-Generator Verknüpfung Problem

**jverkoey-ObjQREncoder-e1841fe** 

Lage, QR-Code zu erzeugen .. aber dieser Code kann nicht durch irgendwelche Leser gelesen werden.

**iOS-QR-Code-Generator** 

Im Anschluss an die Dokumentation aber vor Problem verknüpfen, wenn ich den 'kuapay-iOS-QRCode-Generator' hinzufügen versuch QRCode zu erzeugen. Ich folgte dem im github Projekt beschriebenen Weg.

"Um ein eigenes Projekt aus dieser Vorlage zu erstellen, müssen Sie die Bibliothek libz.dylib an Ihr Ziel in Xcode anhängen. Sie müssen auch die Ordner QRDraw und libpng in Ihren Ordner ziehen Projekt. Aktualisieren Sie den Header-Suchpfad, um im libpng-Ordner im Ziel-Build-Einstellungsmenü nachzusehen. "

Aber es gibt mir 6 Fehlermeldung. Diese sind -

Undefined symbols for architecture i386: 
    "CQR_Encode::EncodeData(int, int, bool, int, char*, int)", referenced from: 
     -[RootViewController LoadQRImage] in RootViewController.o 
    "CQR_Encode::~CQR_Encode()", referenced from: 
     -[RootViewController LoadQRImage] in RootViewController.o 
    "_OBJC_CLASS_$_FileManager", referenced from: 
     objc-class-ref in RootViewController.o 
    "QRDrawPNG::draw(char*, int, int, unsigned char (*) [177], void*)", referenced from: 
     -[RootViewController LoadQRImage] in RootViewController.o 
    "CQR_Encode::CQR_Encode()", referenced from: 
     -[RootViewController LoadQRImage] in RootViewController.o 
    "vtable for QRDrawPNG", referenced from: 
     QRDrawPNG::QRDrawPNG() in RootViewController.o 
    NOTE: a missing vtable usually means the first non-inline virtual member function has no definition. 
ld: symbol(s) not found for architecture i386 
clang: error: linker command failed with exit code 1 (use -v to see invocation) 

Kann mir jemand dabei helfen? ODER schlagen Sie einen besseren QRcode Generator für iOS vor? Vielen Dank!

Antwort

0

Dieses Problem wird verursacht, weil Sie C++ - Code im Hintergrund in Ihrer App verwenden, verwenden Sie .mm anstelle von .m in Ihrem RootViewController.

+0

HI Sharon, versuchte dies bereits .. aber kein Glück :( –

+0

überprüfen Sie, ob Sie alle erforderlichen Frameworks und Bibliotheken und Zielabhängigkeiten in Ihrem Projekt hinzugefügt haben. Ich denke, Sie fehlen QuartzCore.Framework oder "libqrencoder.a" in Bibliotheken und überprüfen Sie auch Zielabhängigkeiten haben Sie "Qrencoder" in Ihrem Projekt. –

+0

Okay, ich habe herausgefunden, dass das Problem passiert, wenn ich kuapay_iOS-QR-Code-Generator und zxing-Decoder-Code im selben Projekt verwenden um Ihnen das Projekt zu schicken? oder die einzige Möglichkeit, es zu teilen wäre github? –

0

Überprüfen Sie, ob die Datei Barcode.mm, qr_draw_png.mm, QR_Encode.mm mit Ihrem Projektziel verknüpft ist. Sie können auch "-fno-objc-arc" -Flag hinzufügen.