2015-01-10 15 views
13

Tôi gặp lỗi này khi tạo ứng dụng của mình. bất cứ ai có thể giúp tôi giải quyết vấn đề này?Lỗi liên kết Apple Mach-O sqlite3

Tôi đang sử dụng nhanh chóng và parse.com. Cảm ơn rất nhiều vì sự giúp đỡ của bạn!

kể từ khi tôi không thể gửi hình ảnh, dưới đây tôi gửi thông báo lỗi nói chung.

Undefined symbols for architecture i386: 
    "_sqlite3_bind_blob", referenced from: 
     -[PFSQLiteDatabase _bindObject:toColumn:inStatement:] in Parse(PFSQLiteDatabase.o) 
    "_sqlite3_bind_double", referenced from: 
     -[PFSQLiteDatabase _bindObject:toColumn:inStatement:] in Parse(PFSQLiteDatabase.o) 
    "_sqlite3_bind_int64", referenced from: 
     -[PFSQLiteDatabase _bindObject:toColumn:inStatement:] in Parse(PFSQLiteDatabase.o) 
    "_sqlite3_bind_null", referenced from: 
     -[PFSQLiteDatabase _bindObject:toColumn:inStatement:] in Parse(PFSQLiteDatabase.o) 
    "_sqlite3_bind_parameter_count", referenced from: 
     ___59-[PFSQLiteDatabase executeQueryAsync:withArgumentsInArray:]_block_invoke in Parse(PFSQLiteDatabase.o) 
     ___57-[PFSQLiteDatabase executeSQLAsync:withArgumentsInArray:]_block_invoke in Parse(PFSQLiteDatabase.o) 
    "_sqlite3_bind_text", referenced from: 
     -[PFSQLiteDatabase _bindObject:toColumn:inStatement:] in Parse(PFSQLiteDatabase.o) 
    "_sqlite3_close", referenced from: 
     ___30-[PFSQLiteDatabase closeAsync]_block_invoke in Parse(PFSQLiteDatabase.o) 
    "_sqlite3_column_blob", referenced from: 
     -[PFSQLiteDatabaseResult dataForColumnIndex:] in Parse(PFSQLiteDatabaseResult.o) 
    "_sqlite3_column_bytes", referenced from: 
     -[PFSQLiteDatabaseResult dataForColumnIndex:] in Parse(PFSQLiteDatabaseResult.o) 
    "_sqlite3_column_count", referenced from: 
     -[PFSQLiteDatabaseResult columnNameToIndexMap] in Parse(PFSQLiteDatabaseResult.o) 
    "_sqlite3_column_double", referenced from: 
     -[PFSQLiteDatabaseResult doubleForColumnIndex:] in Parse(PFSQLiteDatabaseResult.o) 
    "_sqlite3_column_int", referenced from: 
     -[PFSQLiteDatabaseResult intForColumnIndex:] in Parse(PFSQLiteDatabaseResult.o) 
    "_sqlite3_column_int64", referenced from: 
     -[PFSQLiteDatabaseResult longForColumnIndex:] in Parse(PFSQLiteDatabaseResult.o) 
    "_sqlite3_column_name", referenced from: 
     -[PFSQLiteDatabaseResult columnNameToIndexMap] in Parse(PFSQLiteDatabaseResult.o) 
    "_sqlite3_column_text", referenced from: 
     -[PFSQLiteDatabaseResult stringForColumnIndex:] in Parse(PFSQLiteDatabaseResult.o) 
    "_sqlite3_column_type", referenced from: 
     -[PFSQLiteDatabaseResult objectForColumnIndex:] in Parse(PFSQLiteDatabaseResult.o) 
     -[PFSQLiteDatabaseResult columnIndexIsNull:] in Parse(PFSQLiteDatabaseResult.o) 
    "_sqlite3_errmsg", referenced from: 
     -[PFSQLiteDatabase _errorWithErrorCode:] in Parse(PFSQLiteDatabase.o) 
    "_sqlite3_finalize", referenced from: 
     ___59-[PFSQLiteDatabase executeQueryAsync:withArgumentsInArray:]_block_invoke in Parse(PFSQLiteDatabase.o) 
     ___57-[PFSQLiteDatabase executeSQLAsync:withArgumentsInArray:]_block_invoke in Parse(PFSQLiteDatabase.o) 
     -[PFSQLiteStatement close] in Parse(PFSQLiteStatement.o) 
    "_sqlite3_open", referenced from: 
     ___29-[PFSQLiteDatabase openAsync]_block_invoke in Parse(PFSQLiteDatabase.o) 
    "_sqlite3_prepare_v2", referenced from: 
     ___59-[PFSQLiteDatabase executeQueryAsync:withArgumentsInArray:]_block_invoke in Parse(PFSQLiteDatabase.o) 
     ___57-[PFSQLiteDatabase executeSQLAsync:withArgumentsInArray:]_block_invoke in Parse(PFSQLiteDatabase.o) 
    "_sqlite3_reset", referenced from: 
     -[PFSQLiteStatement reset] in Parse(PFSQLiteStatement.o) 
    "_sqlite3_step", referenced from: 
     ___57-[PFSQLiteDatabase executeSQLAsync:withArgumentsInArray:]_block_invoke in Parse(PFSQLiteDatabase.o) 
     -[PFSQLiteDatabaseResult next] in Parse(PFSQLiteDatabaseResult.o) 
ld: symbol(s) not found for architecture i386 
clang: error: linker command failed with exit code 1 (use -v to see invocation) 
+0

Điểm bắt đầu rõ ràng là: bạn đang cố liên kết với thư viện sqlite3 chưa? Nếu vậy, làm thế nào? –

+0

cũng có lỗi tương tự trong PFSQLiteDatabaseResult.o – moonvader

Trả lời

27

sau khi thử và sai, câu trả lời là rà soát tất cả khuôn khổ một lần nữa. có vẻ như parse.com vừa cập nhật trong vài tháng này.

hiện nó cần libsqlite3.dylib như trên của nó thư viện.

nếu bạn tìm thấy vấn đề tương tự, trước hết là kiểm tra các yêu cầu cập nhật mới nhất ở đây: https://www.parse.com/apps/quickstart#parse_data/mobile/ios/native/existing

+5

chỉ trong trường hợp câu trả lời của Gibran không rõ ràng, sửa chữa là đi đến phần Xây dựng -> Liên kết nhị phân với phần Thư viện và thêm libsqlite3.dylib vào danh sách các thư viện được liên kết –

+0

Lưu ý rằng ngay bây giờ chúng ta có thư viện ".tbd". http://stackoverflow.com/questions/31450690/why-xcode-7-shows-tbd-instead-of-dylib –

4

Tôi đã có vấn đề này trước đây. Chỉ cần nhập libsqlite.dyliblibz.dylib từ các khung và các lỗi của bạn sẽ biến mất.

9

Tôi chỉ có điều này xảy ra quá và @ trả lời Gibran đưa tôi đi đúng hướng. Sự khác biệt mà tôi thấy khi sử dụng Xcode 7 và iOS 9 là libsqlite3.dylib đã được thay thế bằng libsqlite3.tbd