Hoe C/C++ compileren en uitvoeren in een Unix-console/Mac-terminal?

Hoe kan ik C of C++ compileren/uitvoeren in Unix-console of een Mac-terminal?

(Ik weet het, vergeet het en leer het opnieuw. Tijd om het op te schrijven.)


Antwoord 1, autoriteit 100%

Als het een eenvoudig programma met één bron is:

make foo

waar het bronbestand foo.c of foo.cpp, enz. is.

Je hebt niet eens een makefile nodig. Make heeft genoeg ingebouwde regels om je bronbestand om te bouwen tot een uitvoerbaar bestand met dezelfde naam, minus de extensie.

Het uitvoeren van het zojuist gebouwde uitvoerbare bestand is hetzelfde als het uitvoeren van een willekeurig programma – maar u zult meestal het pad naar het uitvoerbare bestand moeten specificeren, aangezien de shell alleen zoekt naar wat zich in $PATHbevindt om uitvoerbare bestanden te vinden , en meestal bevat dat niet de huidige map (.).

Dus om het ingebouwde uitvoerbare bestand foouit te voeren:

./foo

Antwoord 2, autoriteit 56%

gcc main.cpp -o main.out  
./main.out

Antwoord 3, autoriteit 34%

Dit is het commando dat op alle Unix-machines werkt… Ik gebruik het op Linux/Ubuntu, maar het werkt ook in OS X. Typ de volgende opdracht in Terminal.app.

$ g++ -o lab21 iterative.cpp

-ois de letter O, niet nul

lab21wordt je uitvoerbare bestand

iterative.cppis uw c++-bestand

Nadat je die opdracht hebt uitgevoerd, typ je het volgende in terminal om je programma uit te voeren:

$ ./lab21

4, Autoriteit 16%

Twee stappen voor mij:

eerst:

make foo

Dan:

./foo

Antwoord 5, autoriteit 5%

Ryan, ik verander dit in een antwoord in plaats van een opmerking, omdat het lijkt alsof ik te kort was. Doe dit allemaal in “Terminal”.

Om de G++ compiler te gebruiken, moet je dit doen:

  1. Navigeer naar de map waarin u het * .cpp-bestand hebt opgeslagen.

    cd ~/programs/myprograms/
    (De ~ is een snelkoppeling voor uw huis, d.w.z. / gebruikers / ryan / programma’s / myprograms /, vervang vervangen met de eigenschap die u daadwerkelijk hebt gebruikt.)

  2. Compileer het

    g++ input.cpp -o output.bin(OUTPUT.BIN kan alles zijn met enige extensie, echt. Bin staat gewoon bij UNIX.)

    Er moet niets zijn teruggekeerd als het succesvol was, en dat is oké . Over het algemeen krijgt u rendement op storingen.

    Als u echter lstypt, ziet u de lijst met bestanden in dezelfde map. U ziet bijvoorbeeld de andere mappen, input.cpp en output.bin

  3. Vanuit de map, voer deze nu uit met ./outbut.bin


6, Autoriteit 5%

Een compacte manier om dat te doen, zou dat kunnen zijn:

make foo && ./$_

Leuk om een ​​one-liner te hebben, zodat u uw uitvoerbare bestand opnieuw gemakkelijk kunt uitvoeren.


7, Autoriteit 4%

Aangenomen van de huidige map staat niet op het pad, de syntaxis is ./[name of the program].

Bijvoorbeeld ./a.out


8, Autoriteit 4%

Om C- of C++ -programma’s te compileren, is er een gemeenschappelijk opdracht:

  1. make filename

  2. ./filename

MAKE ZAL UW SOURCE-bestand opbouwen in een uitvoerbaar bestand met dezelfde naam. Maar als u de standaardweg wilt gebruiken, kunt u de GCC-compiler gebruiken om C-programma’s & AMP te bouwen; G ++ voor C++

voor c:

gcc filename.c
./a.out

Voor C++:

g++ filename.cpp
./a.out

Antwoord 9, autoriteit 3%

Voeg het volgende toe om de beste waarschuwingen te krijgen, u zult er geen spijt van krijgen. Als je kunt, compileer WISE (waarschuwing is fout)

- Wall -pedantic -Weffc++ -Werror

Antwoord 10

Gebruik een makefile. Zelfs voor zeer kleine (= één bestand) projecten is de moeite waarschijnlijk de moeite waard omdat je verschillende sets compiler-instellingen kunt hebben om dingen te testen. Foutopsporing en implementatie werken op deze manier veel gemakkelijker.

Lees de makehandleiding, het lijkt op het eerste gezicht vrij lang, maar de meeste secties kun je gewoon doorbladeren. Al met al kostte het me een paar uur en maakte me veel productiever.


Antwoord 11

Ik vond deze link met routebeschrijving:

http://www.wesg.ca/2007/11/how-to-write-and-compile-c-programs-on-mac-os-x/

In principe doe je:

gcc hello.c
./a.out (or with the output file of the first command)

Antwoord 12

voer gewoon de map in waarin uw c/cpp-bestand zich bevindt.

voor het compileren en uitvoeren van c-code.

$gcc filename.c
$./a.out filename.c

voor het compileren en uitvoeren van c++-code.

$g++ filename.cpp
$./a.out filename.cpp

“$” is het standaard mac-terminalsymbool


Antwoord 13

Om een ​​CPP-broncode van Mac Terminal te compileren en uit te voeren, moet u het volgende doen:

  1. Als het pad van het CPP-bestand Sommige Path / FileName.cpp is, gaat u eerst de map met pad Sommige Path
  2. om bestandsnaam te compileren.cpp, type C++ FileName.cpp -o FileName
  3. Voer het programma uit, typt u ./FileName

14

Stap 1 – Maak een CPP-bestand met de opdracht

Touch Test.cpp

Stap 2 – Voer deze opdracht uit

G ++ Test.cpp

Stap 3 – Voer uw CPP-bestand uit

./ a.Out


15

Een .c-bestand uitvoeren met behulp van de terminal is een proces van twee stappen.
De eerste stap is om GCC in de terminal te typen en het .c-bestand naar de terminal te laten vallen en drukt u vervolgens op :

username$ gcc /Desktop/test.c 

Voer in de tweede stap de volgende opdracht uit:

username$ ~/a.out

16

U moet in de map gaan waar u uw bestand hebt opgeslagen.
Om de code te compileren: gcc fileName
U kunt ook de g++ fileNamegebruiken
Dit zal uw code compileren en een binair maken.
Zoek nu naar het binary in dezelfde map en voer het uit.

Other episodes