• 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

einfache c librarys

syrinx

Gast
hi!
ich hab ein kleines problem mit den standart librarys wie stdio.h oder string.h usw. ich will einen c-code kompilieren den ich im netz gefunden hab (es handelt sich dabei um pstree welches ich in darwin einbinden will), jedoch fehlen sämtliche librarys um den code zu compilieren. ich habe xcode, gcc4.0 und die developer tool für xcode installiert. die google suche hat ergeben dass die libs da sein sollten, wenn die dev tools installiert sind. spotlight findet dieses libs auch nicht auf meinem system. wo bekomm ich denn her? oder hab ich die falschen datein von der installations dvd installiert?

danke!

syrinx
 

tjp

Altgelds Küchenapfel
Registriert
07.07.04
Beiträge
4.059
hi!
ich hab ein kleines problem mit den standart librarys wie stdio.h oder string.h usw. ich will einen c-code kompilieren den ich im netz gefunden hab
"stdio.h" und "string.h" sind Header und keine Libraries. Die dazu gehörende Library ist die Standard C-Library libc.dylib bzw. libc.a
 

syrinx

Gast
ok danke für den hinweis, das löst mein problem aber leider immer noch nicht..
 

below

Purpurroter Cousinot
Registriert
08.10.06
Beiträge
2.858
Was genau ist Dein Problem?

Alex
 

syrinx

Gast
mein problem is dass ich keine headerdatein aufm system hab, obwohl ich die developer tool installiert hab. somit kann ich auch keinen c code compilieren weil der compiler nichtmal solche sachen wie zb stdio.h findet. ich hoffe ihr könnt mir da helfen...
 

below

Purpurroter Cousinot
Registriert
08.10.06
Beiträge
2.858
Mit genau meinte ich, was ist Dein Code, was ist Deine Fehlermeldung?

Kannst Du HelloWorld übersetzen?

Alex
 

syrinx

Gast
also zunaechst mal sollte ich erwahnen dass ich nciht der grosse held im programmieren bin und gerade anfange mit unix auf dem mac zu arbeiten. die darwin version die auf osx 10.4 läuft kennt "pstree" nicht, ein programm mit dem man die laufenden prozesse als tree anzeigen lassen kann. ich hab mir also den quellcode zu diesem programm besorgt und versucht das so einzubinden dass es funktioniert. dazu muss man das erst kompilieren und das binary dann in /usr/bin ablegen. beim compilieren der pstree.c datei kommt aber ganz oben eine reihe von errors die besagen, dass stdio.h, string.h usw nicht gefunden werden können. wie schon gesagt hab ich aber xcode, gcc4.0 und die xcode developer tools installiert, und darin sollten diese header eigentlich enthalten sein wie ich bis jetzt gehört hab. ob HelloWorld geht hab ich nicht versucht, aber höchstwahrscheinlich wird es nicht gehn da diese datein einfach nicht drauf zur verfügung stehen. kann ich die von der inatallations dvd irgendwo installieren oder muss ich die runterladen?
 

below

Purpurroter Cousinot
Registriert
08.10.06
Beiträge
2.858
Ich hab mir die Sourcen gerade runtergeladen

gcc -O -o pstree pstree.c

Funktioniert problemlos. OS X 10.4, Xode 2.4.x ?

Alex
 

syrinx

Gast
xcod 2.4.1

das kompilieren liefert folgenden output im terminal:

pstree.c:135:19: error: stdio.h: No such file or directory
pstree.c:136:20: error: stdlib.h: No such file or directory
pstree.c:137:40: error: string.h: No such file or directory
pstree.c:142:40: error: unistd.h: No such file or directory
pstree.c:143:39: error: pwd.h: No such file or directory
pstree.c:145:55: error: sys/ioctl.h: No such file or directory


edit: danach kommen natürlich noch ne ganze reihe mehr fehlermeldungen...

ps: was macht -O? ich kann diese option nicht in den man pages finden... nur ganz oben steht was von levels, aber keine ausführliche beschreibung zu dieser option. nur der neugierde wegen...
 

Gogul

Uelzener Rambour
Registriert
21.05.04
Beiträge
372
mach mal in Xcode:

File-> new Project -> unter "Command Line Utility" "Standard tool" anwählen und "next" klicken, irgenteinen namen verpassen und dann auf den grünen Pfeil mit Hammer klicken und hier sagen was kommt!
 

below

Purpurroter Cousinot
Registriert
08.10.06
Beiträge
2.858
Xcode neu installieren. Das klingt nicht gut.

Zu -O:

-O
Optimize. Optimizing compilation takes somewhat more time, and a lot more
memory for a large function.

With -O, the compiler tries to reduce code size and execution time, without
performing any optimizations that take a great deal of compilation time.

-O turns on the following optimization flags: -fdefer-pop -fdelayed-branch
-fguess-branch-probability -fcprop-registers -floop-optimize
-fif-conversion -fif-conversion2 -ftree-ccp -ftree-dce
-ftree-dominator-opts -ftree-dse -ftree-ter -ftree-lrs -ftree-sra
-ftree-copyrename -ftree-fre -ftree-ch -fmerge-constants

-O also turns on -fomit-frame-pointer on machines where doing so does not
interfere with debugging.
 

syrinx

Gast
hab mein file "test" genannt. im den fenster sind drei dateien zu sehn:

main.c
test (in roter schrift)
test.1
 

syrinx

Gast
kann ich xcode einfach nochmal installieren oder sollte ich da vorher was löschen bzw deinstallieren?
 

below

Purpurroter Cousinot
Registriert
08.10.06
Beiträge
2.858
Und, kannst Du das bauen?

Alex
 

syrinx

Gast
ne sieht nicht so aus... hab auch ein standart hello world geschrieben dass auch nicht ging... was nach build ausgegeben wird steht 2 pots weiter oben.

es kommt immer der selbe fehler... der compiler findet die header einfach nicht weil die auch irgendwie nicht da sind.
 

below

Purpurroter Cousinot
Registriert
08.10.06
Beiträge
2.858
Neu installieren. Einfach drüber.

Alex
 

syrinx

Gast
ok ich hab jetzt die developer tools und xcode tools neu installiert bzw aktualisiert... aber xcode selber kann ich auf der dvd nicht finden. gibts das da überhaupt?
 

KayHH

Gast
Xcode findest Du in /Developer/Applications auf Deiner Platte.


KayHH
 

syrinx

Gast
so ich hab wie gesagt jetzt nur nochmal die tools installiert und mal nen blick in /usr/include geworfen... da sind auf einmal ungewohnt viele datein drinnen :D und hello world hat auch funktioniert. ich versuch jetzt nochmal pstree.

vielen danke für euere hilfe soweit!