[einfaches Programm compilieren] Wieso geht das nicht?

  1. Kempi

    Kempi Thread StarterMacUser Mitglied

    Mitglied seit:
    10.10.2006
    Beiträge:
    623
    Zustimmungen:
    55
    Hi!
    Wollte mich heute das erste mal an Xcode und ans compilieren im Terminal ranmachen.
    Habe Anfangs nur ein ganz billiges C++ Prograemmchen geschrieben und versucht es dann mit dem gcc zu uebersetzen. Geht aber nicht.

    Hier mal mein Programm:
    Code:
    using namespace std;
    
    #include <Carbon/Carbon.h>
    #include <iostream>
    
    int Main() {
    	cout << "Dies ist ein erster Test.";
    	return 0;
    }
    Habe dann im Terminal den gcc folgendermassen gestartet:
    Code:
    gcc test.cpp
    Darauf dann folgender Fehler vom Compiler:
    Code:
    /usr/bin/ld: Undefined symbols:
    _main
    std::ios_base::Init::Init()
    std::ios_base::Init::~Init()
    std::cout
    std::basic_ostream<char, std::char_traits<char> >& std::operator<< <std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*)
    ___gxx_personality_v0
    collect2: ld returned 1 exit status
    Weiss auch nur einer, was das bedeuten koennte?? Das muss doch gehen!

    Vielen Dank schonmal fuer ein paar Tipps! :)
     
    Kempi, 16.10.2006
  2. joachim14

    joachim14MacUser Mitglied

    Mitglied seit:
    08.02.2005
    Beiträge:
    7.295
    Zustimmungen:
    433
    Versuche es doch erst mal mit Xcode und einem der dort vorhandenen Beispiele, um den Ablauf kennenzulernen. Wenn das klar ist, kannst Du doch immer noch eigenen Code testen.
     
    joachim14, 16.10.2006
  3. Unixx

    UnixxMacUser Mitglied

    Mitglied seit:
    25.08.2004
    Beiträge:
    549
    Zustimmungen:
    19
     
    Unixx, 16.10.2006
  4. norbi

    norbiMacUser Mitglied

    Mitglied seit:
    14.01.2003
    Beiträge:
    3.506
    Zustimmungen:
    22
    Wozu das Terminal, wenn Du mit XCode eine komplette IDE hast?

    No.
     
    norbi, 16.10.2006
  5. sECuRE

    sECuREMacUser Mitglied

    Mitglied seit:
    25.06.2005
    Beiträge:
    566
    Zustimmungen:
    6
    Hi,

    du versuchst, ein C++-Programm mit dem C-Compiler zu kompilieren. Verwende statt gcc den g++.

    cu
     
    sECuRE, 16.10.2006
  6. autoexec.bat

    autoexec.batMacUser Mitglied

    Mitglied seit:
    21.01.2005
    Beiträge:
    2.113
    Zustimmungen:
    20
    Da sind aber mehrere Fehler drin:

    1. gcc ist der Compiler für C. C++-Code wird mit g++ kompiliert.

    2. Die main()-Funktion heißt main und nicht Main.

    [edit] Im Gegensatz zu den anderen Meinungen hier würde ich dir für den Anfang gerade keine IDE empfehlen. Knöpfchen drücken kann jeder. Das wichtige ist ja gerade das System dahinter zu verstehen.
     
    autoexec.bat, 16.10.2006
  7. minilux

    miniluxMacUser Mitglied

    Mitglied seit:
    19.11.2003
    Beiträge:
    13.975
    Zustimmungen:
    2.725
    schreib doch mal "main" klein :)
     
    minilux, 16.10.2006
  8. Kempi

    Kempi Thread StarterMacUser Mitglied

    Mitglied seit:
    10.10.2006
    Beiträge:
    623
    Zustimmungen:
    55
    Nein, das passt schon so.

    :hamma: Natuerlich... Oh man...

    Vielen, vielen Dank an alle!
    Ich Trottel.... :)
     
    Kempi, 16.10.2006
  9. Spacemojo

    SpacemojoMacUser Mitglied

    Mitglied seit:
    16.05.2004
    Beiträge:
    617
    Zustimmungen:
    21
    Hi!

    gcc ist die GNU Compiler Collection, also nicht nur ein C-Compiler.
    Wenn du was mit Carbon machen willst (du bindest ja den Header ein), mach es mit Xcode; das ist einfacher als im Terminal
    Für einfache C++-Programme: mit Xcode ein C++ command line utility project erstellen.

    Tobi
     
    Spacemojo, 16.10.2006
  10. below

    belowMacUser Mitglied

    Mitglied seit:
    15.03.2004
    Beiträge:
    13.289
    Zustimmungen:
    1.086
    probier mal

    g++ test.cpp

    Alex
     
    below, 17.10.2006
Die Seite wird geladen...