2015-08-17 2 views
-2

Я понимаю, что мой предыдущий вопрос не был сформулирован достаточно конкретно, поэтому я попытаюсь снова. Я видел похожие проблемы, когда у меня нет соответствующих файлов .m, добавленных в мои компиляционные источники, возможно ли, что это так? Ниже мой кодОшибка команды Linker с кодом выхода 1 Скотт

//: CO2:Hello.cpp 
// Saying Hello with C++ 
#include <iostream> // Stream declarations 
using namespace std; 

int main() { 
cout << "Hello, World! I am " 
<< 8 << " Today!" << endl; 
} ///:~ 

И это подробное сообщение об ошибке, что я получал

Ld/Users/scotglener/Library/Developer/Xcode/DerivedData/COM206-btdjjopfjlpsuygxgdjnxemfqgbb/Build/Продукты/Debug/COM206 нормальный x86_64 кд/Users/scotglener/Desktop/COM206 экспорт MACOSX_DEPLOYMENT_TARGET = 10.10 /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++ -arch x86_64 -isysroot/Применения /Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk -L/Пользователи/scotglener/Библиотека/Разработчик/Xcode/D erivedData/COM206-btdjjpfjlpsuygxgdjnxemfqgbb/Build/Products/Debug -F/Пользователи/scotglener/Библиотека/Разработчик/Xcode/DerivedData/COM206-btdjjopfjlpsuygxgdjnxemfqgbb/Build/Products/Debug -filelist/Пользователи/scotglener/Библиотека/Разработчик/Xcode/DerivedData/COM206-btdjjopfjlpsuygxgdjnxemfqgbb/Build/Intermediates/COM206.build/Debug/COM206.build/Objects-normal/x86_64/COM206.LinkFileList -mmacosx-version-min = 10.10 -stdlib = libC++ -Xlinker -dependency_info -Xlinker/Users/scotglener/Библиотека/Разработчик/Xcode/DerivedData/COM206-btdjjopfjlpsuygxgdjnxemfqgbb/Build/Intermediates/COM206.build/Debug/COM206.build/Objects-normal/x86_64/COM206_dependency_info.dat -o/Пользователи/scotglener/Библиотека/Разработчик/Xcode/DerivedData/COM206-btdjjopfjlpsuygxgdjnxemfqgbb/Build/Products/Debug/COM206

дубликат символа в именоваться _main: /Users/scotglener/Library/Developer/Xcode/DerivedData/COM206-btdjjopfjlpsuygxgdjnxemfqgbb/Build/Intermediates/COM206.build/Debug/COM206.build/Objects-normal/x86_64/main.o /Пользователи/scotglener/Библиотека/Разработчик/Xcode/DerivedData/COM206-btdjjopfjlpsuygxgdjnxemfqgbb/Build/Intermediates/COM206 .build/Debug/COM206.build/Объекты-нормальный/x86_64/HelloWorld.o л.д.: 1 дубликат символа для архитектуры x86_64 лязг: ошибка: команда линкер потерпела неудачу с кодом выхода 1 (использование -v, чтобы увидеть вызова)

+3

В вашем проекте имеется более одной функции 'main'. (Я думаю, что один находится в «main.cpp» и один в «HelloWorld.cpp».) – molbdnilo

ответ

0

Проблема в том, что у вас есть два файла в вашем проекте main.cpp и HelloWorld.cpp, оба из которых определяют функцию main. Поскольку кажется, что вам нужна только версия HelloWorld.cpp, решение состоит в том, чтобы удалить main.cpp из вашего проекта.

0

Возможно, вы добавили в свой проект два файла .cpp с main. (Скорее всего, их имена: main.cpp и HelloWorld.cpp). В проекте всегда должно быть не более одной функции с одной и той же сигнатурой (она называется одним правилом определения). Вы должны перенести каждый файл в свой собственный проект.

+0

У вас может быть одно и то же имя функции с разными аргументами, перегрузка функций –

+0

Действительно. Исправил ответ. –

+0

спасибо, это сработало –

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