Kompilowanie prostego programu Hello World na OS X za pomocą wiersza poleceń


102

Mam prosty przykład Hello World, który próbuję skompilować na OS X, o nazwie hw.cpp:

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

Chciałbym go skompilować gcc, ale nie udało mi się. Chciałbym również usłyszeć inne opcje, takie jak używanie Xcode?


7
„Brak sukcesu” tak naprawdę nie pomaga nikomu w zdiagnozowaniu problemu.
Gareth Davidson

Odpowiedzi:


188

Próbować

g++ hw.cpp
./a.out

g++jest nakładką kompilatora C ++ na GCC.
gccjest nakładką kompilatora C na GCC.

Tak, Xcode jest zdecydowanie opcją. Jest to GUI IDE zbudowane na bazie GCC.

Chociaż wolę nieco bardziej szczegółowe podejście:

#include <iostream>

int main()
{
    std::cout << "Hello world!" << std::endl;
}

17
@math: return 0jest domniemane w main.
fredoverflow

3
@mathepic: i +1. Nie jest to wymagane w C ++. Jeśli maindojdzie do końca funkcji bez naciśnięcia powrotu, to niejawnie zwraca 0.
Martin York

2
Ahh, dobrze. Nadal bym go używał dla jasności.
alternatywa

4
@mathepic: To jest 1 opinia. Osobiście uważam, że jaśniej jest go nie używać.
Martin York

1
Dlaczego a.out? W oknach spodziewam się zobaczyć a.exe. W * nix nie potrzebujemy rozszerzeń. Po co używać .out zamiast bez rozszerzenia? ajest też dziwną nazwą domyślną.
P.Brian. Mackey




2

Nowa wersja tego powinna brzmieć tak:

xcrun g++ hw.cpp
./a.out

To daje mild: can't link with a main executable file './a.out' for architecture x86_64 clang: error: linker command failed with exit code 1 (use -v to see invocation)
Eddified

@ Rat-a-tat-a-tat, przepraszam, nie pamiętam, było 3 lata temu.
Eddified,

1

Nie określiłeś, jaki jest wyświetlany błąd.

Czy problem gccpowoduje błąd lub że gccw ogóle nie możesz uruchomić ?

Jeśli to drugie, najbardziej prawdopodobnym wyjaśnieniem jest to, że podczas instalowania narzędzi programistycznych nie zaznaczyłeś opcji „Wsparcie dla programistów UNIX”, więc pliki wykonywalne wiersza polecenia nie są instalowane na Twojej ścieżce. Zainstaluj ponownie narzędzia programistyczne i pamiętaj, aby kliknąć „dostosuj” i zaznaczyć to pole.


1

Możesz także użyć IDE, takiego jak CLion (JetBrains) lub edytora tekstu, takiego jak Atom, z wtyczką gpp-compiler, która działa jak urok (F5 do kompilacji i wykonania).


1

Użyj następujących dla wielu plików .cpp

g++ *.cpp
./a.out
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.