Компиляция простой программы Hello World на OS X через командную строку - PullRequest
76 голосов
/ 02 ноября 2010

У меня есть простой пример Hello World, который я пытаюсь скомпилировать на OS X, с именем hw.cpp:

#include <iostream>
#include <string>
using namespace std;
int main() {
  cout << "Hello world!" << endl;
  return 0;
}

Я бы хотел скомпилировать его, используя gcc, но у меня ничего не получилось. Я также хотел бы услышать другие варианты, такие как использование Xcode?

Ответы [ 8 ]

149 голосов
/ 02 ноября 2010

Попробуйте

g++ hw.cpp
./a.out

g++ - это интерфейс компилятора C ++ для GCC.
gcc - это интерфейс компилятора C для GCC.

Да, Xcode определенно являетсявариант.Это GUI IDE, построенная поверх GCC.

Хотя я предпочитаю немного более подробный подход:

#include <iostream>

int main()
{
    std::cout << "Hello world!" << std::endl;
}
31 голосов
/ 02 ноября 2010
g++ hw.cpp -o hw
./hw
8 голосов
/ 02 ноября 2010
user@host> g++ hw.cpp
user@host> ./a.out
5 голосов
/ 02 ноября 2010

Для компиляции с gcc требуется передать несколько параметров командной строки.Скомпилируйте его с помощью g++.

1 голос
/ 04 января 2013

Новая версия должна выглядеть так:

xcrun g++ hw.cpp
./a.out
1 голос
/ 02 ноября 2010

Вы не указали ошибку, которую вы видите.

Проблема в том, что gcc выдает ошибку, или в том, что вы вообще не можете запустить gcc?

Если это последнее, наиболее вероятным объяснением является то, что вы не проверяли «Поддержка разработки UNIX» при установке инструментов разработки, поэтому исполняемые файлы командной строки не устанавливаются на вашем пути. Переустановите инструменты разработки и убедитесь, что нажали «настроить» и установите этот флажок.

0 голосов
/ 04 октября 2018

Используйте следующее для нескольких файлов .cpp

g++ *.cpp
./a.out
0 голосов
/ 29 мая 2018

Кроме того, вы можете использовать IDE, например CLion (JetBrains) или текстовый редактор, например Atom, с плагином gpp-compiler, который работает как charm (F5 для компиляции и выполнения).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...