2012-05-02 30 views
7

Ứng dụng của tôi hoạt động hoàn hảo trên Snow Leopard với Xcode 4.2. Được xây dựng không có lỗi và chạy với cơ sở dữ liệu SQL mà không có vấn đề gì. Tôi nâng cấp lên Lion và Xcode 4.3.2 và khi tôi xây dựng, tôi nhận được lỗi của "/usr/include/sqlite3.h tập tin không tìm thấy" trên #import của tôi "/usr/include/sqlite3.h" dòng mã. Bất kỳ ai khác có vấn đề này hoặc có bất cứ đề nghị? Tôi đã thử xóa libsqlite3.dylib từ Project Navigator, và sau đó thêm nó trở lại thông qua dấu + trong tab Build Phases trong Link Binary With Libraries, nhưng lỗi vẫn tồn tại.SQLite3 gặp lỗi trong xcode 4.3.2

Trả lời

1

Tôi nghĩ vấn đề của bạn là bạn cần đưa khung SQLite 3.0 vào dự án của mình.

Tham khảo cho câu hỏi này nếu bạn không biết làm thế nào để thêm một khung: How to “add existing frameworks” in Xcode 4?

Khung bạn muốn là libsqlite3.0.dylib

Hope this helps!

+0

tôi đã cố gắng bao gồm libsqlite3.0.dylib trong khuôn khổ của tôi, và thay đổi tuyên bố nhập khẩu của tôi để #import "/usr/include/sqlite3.0.h", nhưng tôi vẫn nhận được cùng một không tìm thấy lỗi '/usr/include/sqlite3.0h'. Tôi đã cố gắng loại bỏ các khung sqlite3.dylib khác, nhưng lỗi tương tự. Tôi không biết nếu điều này có bất kỳ mang về nó, nhưng khi tôi nâng cấp lên xcode 4.3.2, tôi để lại xcode 4.2 cũ trên hệ thống. – Bill

+10

Tôi tìm thấy nó. Tôi tiếp tục chơi với mã, và tôi thấy rằng trong Lion hoặc Xcode 4.3.2 (không chắc chắn cái nào đang gây ra nó), tôi chỉ phải có câu lệnh import #import "sqlite3.h", không phải toàn bộ đường dẫn của "/usr/include/sqlite3.h". Tôi đã sửa tất cả các báo cáo nhập của mình và nó hoạt động hoàn hảo ngay bây giờ. Tôi nghĩ rằng câu hỏi này có thể được đóng lại, trừ khi có bất kỳ ý kiến ​​khác. – Bill

+0

Vui vì bạn đã tìm ra mọi thứ. –

6

Khi cập nhật từ Snow Leopard đến LionXcode 4.2 đến Xcode 4.5, bạn sẽ gặp lỗi: "'/usr/include/sqlite3.h' không tìm thấy tệp".

Giải pháp:

  • Add thư viện: "libsqlite3.0.dylib" trong Target > Build Phases

  • Thay đổi #import "/usr/include/sqlite3.h" để #import "sqlite.h" trong mã của bạn


Cập nhật cho bài đăng của tác giả: Nó không phải là #import "sqlite.h". Đó là: #import <sqlite3.h>


+0

Để tôi làm việc sau khi thay đổi thành #import

Các vấn đề liên quan