Ошибка SQlite 3 при компиляции в iOS 5 - PullRequest
2 голосов
/ 14 октября 2011

При компиляции моего кода с iOS5 возникает следующая ошибка. С предыдущей версией все нормально

/ Разработчик / Платформы / iPhoneSimulator.platform / Разработчик / SDKs / iPhoneSimulator5.0.sdk / usr / include / sqlite3.h: 230: 24: ошибка: переопределение «sqlite3» как символа другого типа [3]

любые предложения

Ответы [ 2 ]

4 голосов
/ 25 октября 2011

У меня такая же проблема. Я обнаружил, что, когда я изменяю «Компилятор для C / C ++ / Objective-C» с «Apple LLVM compiler 3.0» обратно на «LLVM GCC 4.2», ошибка исчезает. (но это не предпочтительный параметр iOS 5)

Также кажется, что sqlite3 теперь включен по умолчанию в iOS 5.0, что может вызвать ошибку переопределения, когда вы включили sqlite3 в качестве фреймворка в свой проект. Но даже когда я удалил фреймворк из своего проекта, ошибка продолжала появляться (но только 2 вместо 4).

3 голосов
/ 07 февраля 2012

У меня просто была такая же проблема. Моя проблема заключалась в том, что я использовал предварительную декларацию в своем заголовочном файле. Это противоречило строке кода в sqlite3.h:

typedef struct sqlite3 sqlite3;

Вместо того, чтобы использовать предварительное объявление, просто используйте #import <sqlite3> в заголовочном файле, чтобы избежать этой проблемы.

(Я понимаю, что это, возможно, не проблема в вашем случае, Камар, но я выкладываю это для тех будущих кодеров, которые сталкиваются с этой ошибкой)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...