Программа C++ не будет компилироваться при вызове из командной строки, но работает в Eclipse [дубликат]

avatar
David Spivey
9 августа 2021 в 03:27
51
0
0

Я делаю базовый скрипт Hello World, и каждый раз, когда я пытаюсь скомпилировать его из командной строки (пример gcc -o hello.o hello.cpp), я получаю массивный каскад ошибок, прежде чем мне сообщают, что компоновщик завершил работу с ошибкой. Однако, когда я создаю файл через Eclipse C++ IDE, он работает нормально. У меня MacOS 11.3.1. Проверка версии компилятора с помощью gcc -v дает мне

Apple clang version 12.0.5 (clang-1205.0.22.11)
Target: x86_64-apple-darwin20.4.0
Thread model: posix
InstalledDir: /Library/Developer/CommandLineTools/usr/bin

Я убедился, что если я просто поставлю основную функцию, которая возвращает значение, она скомпилируется, так что проблема где-то в строке std::cout << "Hello world";. У меня есть некоторый опыт работы с другими языками, но это мой первый опыт работы с C++.

Источник
paddy
9 августа 2021 в 03:29
2

Попробуйте g++ вместо gcc. Кроме того, покажите фактические ошибки.

JaMiT
9 августа 2021 в 03:39
1

"Я получаю массивный каскад ошибок" -- первая ошибка почти всегда самая важная. Не стесняйтесь сосредоточиться на этом (и включить сообщение в свой вопрос) и пока игнорировать остальные.

JaMiT
9 августа 2021 в 03:40
0

Возможно, вы захотите взглянуть на команду, которую Eclipse использует для компиляции вашей программы. (Он должен быть где-то доступен, хотя, может быть, немного скрыт.) Это может подсказать вам, какие параметры командной строки вам нужно предоставить.

sweenish
9 августа 2021 в 04:22
2

Я бы также не называл ваш исполняемый файл расширением .o.

Ответы (0)