C-Code kann nach der Installation von xcode nicht kompiliert werden

Als ich Xcode auf Snow Leopard installierte, gccstand es mir nicht im Weg. Ich habe manuell hinzugefügt /Developer/bin, um gcc zu erhalten. Ich habe jedoch ein einfaches C-Programm geschrieben, um eine Zeichenfolge einzuschließen und auszugeben, aber ich bekomme Linker-Fehler stdlib.h.stdio.h

Ich denke, das liegt daran, dass ich meinen Include-Pfad nicht konfiguriert habe. Kann mir jemand sagen, warum das nicht automatisch gemacht wurde und wie ich meinen C-Compiler einrichten kann?

Ich hatte auch Macs mit Xcode 4.1, wo der Pfad gcc nicht enthielt. Durch das Bereinigen der alten Pfadänderungen und alten Binärdateien kann das neueste Installationsprogramm Dinge reparieren, die "out of the box" ausgeführt werden
Für das, was es wert ist, habe ich am Ende nur neu formatiert, hahahah! Es scheint, dass der Firmencomputer, den ich geerbt habe, keine Neuinstallation war (wie mir gesagt wurde), also ist meine Lösung, ihn einfach rauszupeitschen ... na ja!
Auch ich habe mir vorgenommen, mehr und mehr meiner "Lion"-Upgrades sauber zu wischen. Siehe Gibt es einen zweiten Schritt ...

Antworten (2)

Ich glaube, es gab einen Fehler in Xcode 4.1, bei dem die Befehlszeilentools nicht installiert waren. Ich habe gerade das 4.1.1-Delta-Installationsprogramm aus dem App Store ausgeführt und alles funktioniert einwandfrei.

Last login: Tue Sep 20 14:47:44 on ttys001
mac:~ mike$ which gcc
/usr/bin/gcc
mac:~ mike$ ls -l /usr/bin/gcc
lrwxr-xr-x  1 root  wheel  12 Sep 19 16:04 /usr/bin/gcc -> llvm-gcc-4.2
mac:~ mike$ echo $PATH
/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin
mac:~ mike$ mkdir /tmp/test
mac:~ mike$ cat > /tmp/test/hello.c << EOF
/* Hello World program */

#include<stdio.h>

main()
{
    printf("Hello World");

}
EOF
mac:~ mike$ cd /tmp/test
mac:test mike$ gcc hello.c -o hello
mac:test mike$ ./hello 
Hello Worldmac:test mike$ 

Dies sollte mit dem neuesten Xcode sofort funktionieren. Haben Sie sichergestellt, dass Sie den neuesten gcc / Xcode verwenden und keine vorherigen Pfade oder Binärdateien installiert haben?

Ohne die Build-Fehler zu kennen, fehlt Ihnen entweder ein Tool oder Sie haben Header-Probleme. Im letzteren Fall wurde hier beschrieben, wie llvm-gcc-Probleme in Geos überwunden wurden: http://trac.osgeo.org/geos/ticket/463 .