ld: 2 повторяющихся символа для архитектуры x86_64

Я новичок в iOS-разработке. Я разрабатываю приложение в Xcode 6.4 и хочу создать базу данных SQlite в Project. Когда я пытаюсь добавить константу, диспетчер соединений и вспомогательные классы запросов в файл пакета и проект сборки, у меня возникает следующая ошибка:

ld: 2 duplicate symbols for architecture x86_64

clang: error: linker command failed with exit code 1 (use -v to see invocation)

введите здесь описание изображения


person Jaywant Khedkar    schedule 20.08.2015    source источник
comment
Можете ли вы опубликовать точный вывод logcat или скриншот?   -  person Sushrita    schedule 20.08.2015
comment
@Sushrita У меня есть скриншот поста.   -  person Jaywant Khedkar    schedule 20.08.2015
comment
Я включил изображение в пост вместо ссылки.   -  person Tunaki    schedule 22.08.2015
comment
@Tunaki: вы разместили изображение с простым текстом! Почему бы вам просто не скопировать и не вставить обычный текст?   -  person Clifford    schedule 22.08.2015
comment
У вас есть одна ошибка (показана), которой предшествуют 11 предупреждений (не показаны). Предупреждения могут иметь отношение к вашей проблеме, вы должны сначала разобраться с ними или, по крайней мере, опубликовать их (в простом тексте).   -  person Clifford    schedule 22.08.2015
comment
Где NotificationTable объявлено? Возможно, во включаемом файле без extern?   -  person trojanfoe    schedule 22.08.2015


Ответы (2)


Спасибо всем, кто прокомментировал мой вопрос,

Я нашел решение ld: 2 повторяющихся символа для архитектуры x86_64, во время объявления константы для переменной имени таблицы я использовал файл класса NSObject для объявления константы, однако это неправильный способ объявления постоянной переменной, поэтому я использовал "Header File" и объявил постоянную переменную, как показано ниже,

 #define registration_table @"registration_table"

ОБНОВЛЕНО

Если мы импортируем файл .m вместо файла .h, то также исключаем повторяющиеся символы для архитектуры x86_64, проверьте файл импорта .

Надеюсь, так это поможет кому-то

person Jaywant Khedkar    schedule 29.02.2016

повторяющиеся символы «NotificationTable» в обоих файлах, в моем случае просто переименуйте один из них, и он работает!

person Jastyle    schedule 22.04.2017