#ios #objective-c
Вопрос:
duplicate symbol __Z13createDustVFXPN7cocos2d6CCNodeEff in:
/Users/SrinivasJ/Library/Developer/Xcode/DerivedData/Race-fahplwvpmjymyegjbzoghrjofgou/Build/Intermediates/Race.build/Debug-iphonesimulator/Race.build/Objects-normal/i386/AIBike.o
/Users/SrinivasJ/Library/Developer/Xcode/DerivedData/Race-fahplwvpmjymyegjbzoghrjofgou/Build/Intermediates/Race.build/Debug-iphonesimulator/Race.build/Objects-normal/i386/Bike.o
ld: 1 duplicate symbol for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)
выше ошибка, которую я получил. я нахожу дубликат метода в обоих классах «createDustVFX»
и изменил имя метода. все работает нормально.
но хотите знать, почему его ошибка с дубликатом символа. оба класса находятся в разных папках. никакой связи между классами.
Комментарии:
1. Выполните поиск в своей базе кода для «createDustVFX» (
_createDustVFX(cocos2d::CCNode*, float, float)
.2. @trojanfoe, пожалуйста, прочтите мой вопрос, я нахожу этот метод и изменился.. он тоже отлично работает. но на уровне архитектуры яблок мне нужно объяснение. почему он выдает эту ошибку ?
3. Потому что у вас есть версия
createDustVFX()
в двух разных файлах.4. @trojanfoe, я полагаю, что не объясняю вам правильно, я понимаю, что у меня одно и то же имя метода в двух разных файлах…. но почему это дает ошибку? мне нужно больше объяснений на уровне архитектуры.. оба файла не связаны друг с другом…
5. Это произойдет на всех архитектурах, а не только на OSX. Нельзя использовать один и тот же символ в нескольких объектных файлах.