2011-12-16 7 views
2

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

ld: duplicate symbol _main in /Users/tyler/Library/Developer/Xcode/DerivedData/iServer-gnfryiiydesjxicyoqsybsqugulz/Build/Intermediates/iServer.build/Debug-iphonesimulator/iServer.build/Objects-normal/i386/main-111B0F2B16D0E565.o and /Users/tyler/Library/Developer/Xcode/DerivedData/iServer-gnfryiiydesjxicyoqsybsqugulz/Build/Intermediates/iServer.build/Debug-iphonesimulator/iServer.build/Objects-normal/i386/main-4AE49C4D6F0286C.o for architecture i386 
Command /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/clang failed with exit code 1 

какие-либо предложения?

+1

Это ошибка ссылки, а не ошибка компиляции. –

+0

К сожалению, я веб-разработчик, наконец, начал работать с устройствами iOS, поэтому всякий раз, когда что-то происходит, когда я нажимаю run, я склонен считать его компиляционной ошибкой. Однако я должен был понять это, учитывая, что это произошло на этапе связывания – Tyler

ответ

0

Пройдите через файлы проекта и убедитесь, что у вас нет двух файлов с именем main.m. Удалите тот, который не принадлежит вашему фактическому проекту.

+0

У меня есть только файл main.c. Я полагаю, что моему проекту нужен файл main.m? – Tyler

+0

Извините, забыли проверить папку поддерживающих файлов. У меня есть файл main.c и файл main.m. Это вызывает ошибку? – Tyler

+0

Компилятор жалуется, потому что имеет дубликаты ** 'main()' ** вызовов. Вашему проекту нужен оригинальный 'main.m', который содержит единственный метод ** main() **. У вас должна быть дополнительная библиотека (или добавленный проект), которая содержит другой основной файл (в вашем случае вы говорите 'main.c'. Если этот main.c принадлежит к другому проекту, его следует удалить. – WrightsCS

0

Не знакомы с мангустами, но проекты часто имеют тестовые приложения, которые проверяют библиотеку. Вероятно, это источник дополнительного main(), который связан. Как сказал WrightsCS, это, вероятно, файл main.m, но если нет, найдите main(.

Смежные вопросы