Ich beginne mit der Entwicklung der iOS-App mit dem Framework-Code, den ich selbst aus dem Quellcode erstellt habe.Nicht definierte Symbole für die Architektur x86_64, aber die Fehlerressourcen sind im eingebauten Framework
Ich habe Architekturen zu Framework-Projekt hinzugefügt und Framework erstellt, die es zu meiner Anwendung hinzufügen.
Und wenn ich Anwendung zu bauen versucht, wurde Undefined symbols for architecture x86_64
Fehler erschienen, zum Beispiel:
"_AES_ige_encrypt", referenced from: _MTAesEncryptInplace in MTProtoKit iOS (MTEncryption.o) _MTAesEncryptInplaceAndModifyIv in MTProtoKit iOS (MTEncryption.o) ... "_AES_set_encrypt_key", referenced from: _MTAesEncryptInplace in MTProtoKit iOS (MTEncryption.o) _MTAesEncryptInplaceAndModifyIv in MTProtoKit iOS (MTEncryption.o) ...
Und viele andere, nicht nur bei MTEncryption
I Rahmen Quelle sah, Datei MTEncryption.m
:
void MTAesEncryptInplace(NSMutableData *data, NSData *key, NSData *iv)
{
AES_KEY aesKey;
AES_set_encrypt_key(key.bytes, 256, &aesKey); // <-- _AES_set_encrypt_key
unsigned char aesIv[AES_BLOCK_SIZE * 2];
memcpy(aesIv, iv.bytes, iv.length);
AES_ige_encrypt(data.bytes, (void *)data.bytes, data.length, &aesKey, aesIv, true); // <-- _AES_ige_encrypt
}
Diese Methoden sind in .../openssl/aes.h
, die bereits in Buildphasen enthalten ist.
Aber ich habe festgestellt, dass aes.m
Datei fehlt (nicht nur in Build-Phasen fehlt, aber Datei existiert nicht).
Ist das normal? Oder genau .m
Dateien fehlen ist Build fehlgeschlagen Grund? Aber wenn es der Grund ist, wie Framework erfolgreich aufgebaut wurde?
ich andere Version dieses Rahmens aus einer anderen Quelle erhalten, und mein Problem war gelöst. Aber danke, ich habe deine Antwort für möglicherweise nützliche Ratschläge gewählt! –