• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Viele hassen ihn, manche schwören auf ihn, wir aber möchten unbedingt sehen, welche Bilder Ihr vor Eurem geistigen Auge bzw. vor der Linse Eures iPhone oder iPad sehen könnt, wenn Ihr dieses Wort hört oder lest. Macht mit und beteiligt Euch an unserem Frühjahrsputz ---> Klick

c programieren auf mac

hello

Schöner von Nordhausen
Registriert
02.07.06
Beiträge
327
hallo zusammen

es gibt doch sicher ein programm mit dem man c programieren kan auf den mac? ich lerne gerade in der schule c programieren, die benutzt (leider) pc. könnt ihr mir sagen wie ich das auf dem mac möglich mache? ich habe ein ibook g4, sofern das wichtig ist

mfg
manuel
 

braegel

Elstar
Registriert
04.03.07
Beiträge
72
im Terminal so was wie gcc myworld.c eingeben a.out müsste dann das ausführbare prog sein ... soweit ich mich richtig erinnere
 

Chris2k

Roter Delicious
Registriert
01.04.06
Beiträge
94
Kannst eigentlich alles da genauso programmieren wie mit unter Windows, was mich nur allgemein wundert, wie sehen die Dateipfade aus, wenn man eine Datei einlesen will? Unter windows müssen die ja nur im Ordner liegen und dann kann man ja dateiname.endung als Pfad nehmen, aber aufm mac funtzt das scheinbar nicht so.
 

Stalefish

Damasonrenette
Registriert
18.10.06
Beiträge
489
Doch sollte eigentlich auch so funktionieren. Ohne jetzt eine Ahnung von C Programmierung zu haben^^

Also wenn, "datei.cdateiendung" im Verzeichnis /x/y/z liegt sollte die Datei "datei.endung" einfach mit "datei.endung" aufgerufen werden können.

Gruß Stalefish
 

Chris2k

Roter Delicious
Registriert
01.04.06
Beiträge
94
Komisch, bei mir tuts das weder in Java noch in C.

Hab das so Aufgebaut: Projektfolder/bla.c
Und die Datei liegt in: Projektfolder/datei.endung

Kann mir das vielleicht mal jemand genauer erklären, weil da bleib ich immer hängen....
 

below

Purpurroter Cousinot
Registriert
08.10.06
Beiträge
2.858
1) Da wo ich herkomme ist "Funz" ein derber Ausdruck für weibliche Geschlechtsorgane. Bitte, bitte, mit Zucker oben drauf, kein "funzt". OK, Freunde?

2) Beschreib mal bitte ganz genau, was Du machst. Wie genau rufst Du gcc auf?

Alex
 

floorjiann

Strauwalds neue Goldparmäne
Registriert
18.01.07
Beiträge
639
1. installiere XCode
2. schreibe eine .c Datei
3. tippe in Terminal gcc -o Programmname <Datei.c> (sofern du dich nicht im Verzeichnis befindest natürlich den Pfad mit angeben

-o bewirkt, dass das Programmname nicht "a.out" sondern im obigen Fall eben Programmname ist

4. ./Programmname zum ausführen eingeben

Das sollte eigentlich alles gewesen sein..
 

hello

Schöner von Nordhausen
Registriert
02.07.06
Beiträge
327
ich wollte gerade xcode instalieren, aber ich habe keine ahnung auf welcher cd das sein soll...ich habe die software cd komplet instaliert aber xcode ist da nicht drauf. könnt ihr mir sagen auf welcher cd das ist?
und wegen dem im terminal, ich habe mal eine datei von der schule nach hause genommen und wollte sie mal laufen lase. geht aber nicht, es kommt: no input files. was mache ich falsch?
 

Amin Negm-Awad

Süsser Pfaffenapfel
Registriert
01.03.07
Beiträge
665
Es gab mal eine OS-X-Version, bei der es nicht mitgeliefert wurde. Das macht nichts. Geh einfach auf developer.apple.com und melde dich dort mit einem kostenlosen Account an. Dann kannst du es herunter laden.
 

hello

Schöner von Nordhausen
Registriert
02.07.06
Beiträge
327
danke das mit dem xcode läuft jetzt...aber aus irgendeinem grund kann ich das programm das ich dan programiert habe nicht laufen lassen..was mache ich falsch?
 

Chris2k

Roter Delicious
Registriert
01.04.06
Beiträge
94
Wie startest du das denn in Xcode? Kopier doch mal dein Quellcode und leg ein neues "Projekt" an füge deinen Inhalt ein und kompiliere es neu.
 

fugu

Boskoop
Registriert
18.12.06
Beiträge
40
Als Projekt muss "Command Line Utility / C++ Tool" ausgewählt werden. Dann einfach den Programmcode schreiben und über Build & Go ausgeben lassen
 

Naphaneal

deaktivierter Benutzer
Registriert
09.09.07
Beiträge
71
bei der leopard upgrade scheibe ist Xcode auf der Dvd drauf. Entweder im optionalen installationsordner oder direkt im verzeichnis Xcode.

bei der 2-scheiben-version von leopard
befindet sich xcode meines wissens auf der 2. scheibe.

was ich bei xcode bemerkt habe, ist folgendes. wenn du eine C-datei schreibst, generiert xcode eine header-datei aus dem was du schreibst und fügt eine pfadangabe in deine .c-datei ein.

keine ahnung, ob's an mir leigt oder ob das so gewollt ist.

aber um die .c-datei zu compilieren gibste folgendes ein.

gcc <dateiname>.c

es wird eine a.out datei erstellt. zu testzwecken reicht dieser aufruf völlig aus.

später wirste dann mit gcc - o <zieldateiname>.<zieldateiendung> <quelldateiname>.<quelldateiendung>

komplexere gebilde erstellen können. das wird dann wichtig, wenn du bibliotheken einfügen willst oder dein programm aus mehreren objetdateien besteht.

greetz

Naph
 

Syphedias

Golden Delicious
Registriert
27.10.07
Beiträge
6
\edit: Hat sich quasi erledigt. Auch wenn ich nicht weiß worans lag. Falls es jemand weiß wär ich trotzdem froh ;)

Hallo!

Ich hab hier eine ähnliche Frage, drum häng ich mich hier mal dran.

Ich hab Xcode runtergeladen und installiert und auch brav alle hier angegebenen Schritte befolgt.

Jedoch, wenn ich auf "Build and Go" klicke, bekomm ich jedoch nur 2 Fehlermeldungen.

Hier ist mein Programmcode (ich weiß, ist primitiv, wurde aber so gefordert):

#include <stdio.h>
#define Zahl 10

int main(void)

{
char szstring [] = "Dies ist euer erstes Programm";

int iZahl = 10, iErgeb = 0;

printf ("%s", szstring);
printf (" und ihr solltet mit Hilfe der Fehleranzeige\nalle Syntaxfehler finden.\n");
printf ("Die Fehlersuche gestaltet sich hin und wieder als schwierig");
printf ("\ndeshalb solltet ihr lernen, sie zu beherrschen, um eure weiteren Programme");
printf (" schneller und effizienter schreiben zu koennen");
printf ("\nWenn alles richtig ist, sollte das Ergebnis\nder Rechnung korrekt sein und 100 lauten.\n");

iErgeb = Zahl * iZahl;

printf("\nDas Ergebnis der Rechnung lautet: %i", iErgeb);
printf("\n\nViel Erfolg bei SE!\n\n");

return 0;
}


Wenn ich jetzt auf "Build & Go" klicke passiert jedoch nichts, ausser dass ich die zwei Fehler erhalte:

Building target “Uebung” of project “Uebung” with configuration “Release” — (2 errors)
cd /Users/MC/SE-Uebung/Uebung
/Developer/usr/bin/g++-4.0 -o /Users/MC/SE-Uebung/Uebung/build/Uebung.build/Release/Uebung.build/Objects-normal/ppc/Uebung -L/Users/MC/SE-Uebung/Uebung/build/Release -F/Users/MC/SE-Uebung/Uebung/build/Release -filelist /Users/MC/SE-Uebung/Uebung/build/Uebung.build/Release/Uebung.build/Objects-normal/ppc/Uebung.LinkFileList -arch ppc -mmacosx-version-min=10.5 -isysroot /Developer/SDKs/MacOSX10.5.sdk
ld: duplicate symbol _main in /Users/MC/SE-Uebung/Uebung/build/Uebung.build/Release/Uebung.build/Objects-normal/ppc/main-F715E785.o and /Users/MC/SE-Uebung/Uebung/build/Uebung.build/Release/Uebung.build/Objects-normal/ppc/main-56F5258C.o

collect2: ld returned 1 exit status
ld: duplicate symbol _main in /Users/MC/SE-Uebung/Uebung/build/Uebung.build/Release/Uebung.build/Objects-normal/ppc/main-F715E785.o and /Users/MC/SE-Uebung/Uebung/build/Uebung.build/Release/Uebung.build/Objects-normal/ppc/main-56F5258C.o
collect2: ld returned 1 exit status
cd /Users/MC/SE-Uebung/Uebung
/Developer/usr/bin/g++-4.0 -o /Users/MC/SE-Uebung/Uebung/build/Uebung.build/Release/Uebung.build/Objects-normal/i386/Uebung -L/Users/MC/SE-Uebung/Uebung/build/Release -F/Users/MC/SE-Uebung/Uebung/build/Release -filelist /Users/MC/SE-Uebung/Uebung/build/Uebung.build/Release/Uebung.build/Objects-normal/i386/Uebung.LinkFileList -arch i386 -mmacosx-version-min=10.5 -isysroot /Developer/SDKs/MacOSX10.5.sdk
ld: duplicate symbol _main in /Users/MC/SE-Uebung/Uebung/build/Uebung.build/Release/Uebung.build/Objects-normal/i386/main-F715E785.o and /Users/MC/SE-Uebung/Uebung/build/Uebung.build/Release/Uebung.build/Objects-normal/i386/main-56F5258C.o

collect2: ld returned 1 exit status
ld: duplicate symbol _main in /Users/MC/SE-Uebung/Uebung/build/Uebung.build/Release/Uebung.build/Objects-normal/i386/main-F715E785.o and /Users/MC/SE-Uebung/Uebung/build/Uebung.build/Release/Uebung.build/Objects-normal/i386/main-56F5258C.o
collect2: ld returned 1 exit status
Build failed (2 errors)

Ich hoffe jemand kann mir helfen, wie ich das beheben kann, da ich mit Entwicklungsumgebungen (v.a. unter Mac) praktisch Null Erfahrung hab!

Danke
 
Zuletzt bearbeitet:

FrankR

Gascoynes Scharlachroter
Registriert
15.11.07
Beiträge
1.537
Das liest sich für mich so, als ob Du in Deinem Projekt zwei C Sourcefiles drin hast, die jeweils Beide main() enthalten. Vielleicht probierst Du einfach erst mal gcc auf der Kommandozeile ohne das ganze XCode Drumherulm. Also einfach "gcc dein_programm.c; ./a.out".
 

Skilljoy

Empire
Registriert
21.11.06
Beiträge
87
Wie schon gesagt wurde, einfach im Terminal in den entsprechenden Ordner gehen (cd) und gcc -o dateiname dateiname.c eingeben und dann mit ./dateiname ausführen.
 

Naphaneal

deaktivierter Benutzer
Registriert
09.09.07
Beiträge
71
das programm is ok...aber der linker hat nen fehler bemängelt...schätze du hast entweder ne fehlerhafte datei angehängt oder beim linken is ein fehler passiert....dein programm mal entwanzen...ich weiß jetzt nicht welcher debugger bei mac is, ich nehm aber mal stark an es is gdb. kdbg is eher unwahrscheinlich...

yo nach apropos debugger sind gdb, jdb und perldebug drauf...

gdb = GNU debugger
jdb = java debugger
perldebug = perl debugger

schon klasse was hier so alles drauf is...

zum gdb die man-pages lesen und die quelldatei entwanzen...falls das ganze mit xcode geschrieben wurde, mußte den dortigen debugger bemühen. is wahrscheinlich auch besser, da der mit ner grafischen oberfläche arbeitet, die übersichtlicher ist als die zeilenstruktr vom gdb...



greetz


Naph
 

theneoinside

Doppelter Prinzenapfel
Registriert
19.05.06
Beiträge
444
hey, mag keinen neuen thread aufmachen, hab abe rmal ne frage zu xcode:

ich lern derzeit in der uni c++ und suche nach dem grafischem debugger. da wollt ich dann xcode nutzen, nun ist meine frage: wie bekommt man es hin, dass man einzelne .cpp-dateien damit öfnnen und laufen lassen kann, ohne extra ein projekt anzulegen? ich hab nämlihc nicht so die lust fuer jede einzelne aufgabe ein projekt zu machen bzw alten lösungscode erst neu in ein projekt zu packen, wenn ihr versteht was ich meine.

gibts da irgendeine abhilfe? oder muss ich ansosnten weiter im terminal mit g++ und gdb rummmachen?