zwei Fragen zu C++

    Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

    • zwei Fragen zu C++

      Hallo

      ich habe auf beide Fragen trotz Suche noch keine Antwort gefunden und wäre dankbar, wenn mir jemand weiterhelfen könnte!

      Frage 1: Ich hatte Mac OS 10.5 vor einigen Monaten ohne die Developer Tools installiert. Da ich diese aber jetzt brauche, z.B. um mit g++ zu kompilieren, habe ich die Installations-CD eingelegt und einfach XCodeTools.mpkg installiert. Reicht das schon?

      Frage 2: Ein kompiliertes C++ Programm ist bei mir eine "Ausführbare Unix-Datei (PowerPC)". Gibt es eine Möglichkeit, die zu *.app umzuwandeln (Unter Windows kann man ja auch *.exe Dateien aus C++ Code erstellen)?

      Gruß angrusa
      Keep your friends close- but your enemies closer.
    • Hallo,

      schau mal hier: zwei Fragen zu C++. Dort wird jeder fündig!

      Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
    • RE: zwei Fragen zu C++

      Zu Frage 1 kann ich nicht viel sagen. Aber wenn gcc korrekt funktioniert und XCode ausgeführt werden kann, dann wird das wohl reichen

      Zu Frage 2: Eine "ausführbare UNIX-Datei" ist das Äquivalent zu einer .Exe auf der Dose, denn in jeder .App steckt eine solche Datei als das eigentliche Kompilat.
      Eine .App ist im übrigen nichts weiter Ordner mit einer entsprechenden Struktur (kann man sich im Terminal sehr schön ansehen oder im Finder Kontextmenu auf einer .App öffnen und dann "Paketinhalt zeigen" auswählen).

      Zum Ausführen ist letztlich nicht mehr nötig, als eben jene ausführbare Datei. Ich vermute mal, dass du direkt über g++ mittels etwa
      g++ -o test test.cpp
      kompilierst. Wenn du möglichst einfach an eine vollständige .App kommen willst, empfiehlt es sich, deinen C++ Code in ein entsprechendes XCode-Projekt einzubetten. XCode kümmert sich dann um den Rest.

      Ich hoffe, ich konnte dir etwas weiterhelfen. Wenn nicht, kannst du mich gern via ICQ kontaktieren.
      MacBook Pro 15,4" 2.0 GHz/1. Generation/2048 MByte RAM/MacOS X 10.5.4
      Powerbook G3 12" (Wallstreet) 233MHz/256 MByte RAM/MacOS X 10.4.11
      iPod Video, 60 GByte
    • Hallo

      ja, du konntest mir gut helfen, vielen Dank :)

      Aber noch etwas:
      Ich benutze am Anfang erst mal ganz normal TextEdit und das Terminal zum Programmieren, da solche IDEs am Anfang zu kompliziert sind (ich hatte es z.B. schon mit Eclipse versucht).

      Kennst du eine Möglichkeit, unabhängig von XCode eine APP zu erstellen?

      Und wo liegt eigentlich der Sinn einer APP, wenn es auch als ausführbare UNIX Datei geht? Vllt. um in diesem APP-Paket noch Dateien zu speichern, auf die das Programm zugreift?

      Gruß
      Keep your friends close- but your enemies closer.
    • Im Bundle liegen noch andere Sachen, wie z.B. die Info.plist, das Icon, die Bedienoberfläche (nibs) ggf. in mehreren Sprachen, Bibliotheken usw.. Dein Programm sollte aber nie in das Bundle reinschreiben, dafür gibt es andere Orte.

      Wenn du nur Kommandozeilenprogramme schreibst brauchst du aber noch kein Bundle, starte die einfach mit dem Terminal.
      Das Internet ist ein gefährlicher Ort, und Windows-Nutzer wissen, dass man eine Rüstung tragen sollte. Apple-Nutzer tragen stattdessen Hawaii-Hemden.
      Jewgenij Kaspersky
    • Eine .App erzeugt man normalerweise tatsächlich nicht von Hand.
      Wenn du gern ein .App-Bundle haben möchtest, versuchs wirklich mal mit XCode. Im Vergleich zu vielen anderen IDEs ist es recht übersichtlich und nimmt dir obendrein eine Menge Arbeit ab.
      Solltest du vorhaben dich intensiver mit der Programmierung auf dem Mac auseinanderzusetzen, so kommst du früher oder später ohnehin kaum drumrum.

      Aber wie Realityking schon sagte: Solange du ein Kommandozeilentool programmierst, brauchst du keine .App draus machen (zugegebenermaßen braucht man das auch nicht zwingend für eine GUI-Anwendung, allerdings ist das dann der normale Weg).

      Was aber noch ganz interessant wäre: Was programmierst du da eigentlich? Und warum C++ auf dem Mac und nicht Objective-C?
      MacBook Pro 15,4" 2.0 GHz/1. Generation/2048 MByte RAM/MacOS X 10.5.4
      Powerbook G3 12" (Wallstreet) 233MHz/256 MByte RAM/MacOS X 10.4.11
      iPod Video, 60 GByte
    • Ich suche vor allem eine "plattformunabhängige" Programmiersprache (außer Java), um nicht auf den Mac beschränkt zu sein.

      Ich höre zwar überall, dass Objective-C für den Mac besser ist als C++, aber was sind denn die Gründe dafür (außer, dass Objective-C vllt. einfacher zu erlernen ist)?

      Ich kann doch auch mit C++ auf dem Mac GUI-Programme erstellen, oder?

      Gruß
      Keep your friends close- but your enemies closer.
    • Naja, was heißt schon plattformunabhängig? Sicher ist der Sprachstandard von C++ sprachunabhängig, aber mit diesem Standard allein kannst du keine GUI-Anwendungen schreiben.
      Unter Windows nutzt du für solch einen Zweck zum Beispiel die MFC. Dieses Framework kapselt die Zugriffe auf die API und ermöglicht dir so eine objektorientierte Programmierung auf einer API, die nicht objektorientiert ist.
      Nun gibt es allerdings die MFC nicht für den Mac und Cocoa auf Windows eigentlich auch nicht. Deschalb hast du dann mit C++ zwar eine Sprache, die auf beiden Sytemen kompiliert werden kann, nur fehlen dir schlicht die Frameworks.
      Um wirklich unabhängig von der Plattform zu werden empfiehlt sich definitiv Java. Denn das steht nahezu überall zur Verfügung. Nachteil ist hier natürlich die Ausführungsgeschwindigkeit.

      Objective-C bietet sich auf dem Mac vor allen Dingen an, weil das Framework Cocoa selbst damit geschrieben ist. Dadurch erhältst du bessere Geschwindigkeiten als bei Bridging-Lösungen. Obendrein würde ich auch nicht unbedingt sagen, dass Objective-C leichter zu erlernen wäre, als C++. Objective-C ist sicher etwas klarer, was die Konzepte angeht, was es aber nicht zwanfsläufig einfacher macht.
      Ich denke weder C++, noch Objective-C bieten sich als Einsteigersprachen an. Das sollte dich natürlich nicht davon abhalten, diese Sprachen zu erlernen; ich hab selbst mit C angefangen.

      Aber noch einmal die Frage:
      Was konkret willst du eigentlich programmieren?
      MacBook Pro 15,4" 2.0 GHz/1. Generation/2048 MByte RAM/MacOS X 10.5.4
      Powerbook G3 12" (Wallstreet) 233MHz/256 MByte RAM/MacOS X 10.4.11
      iPod Video, 60 GByte