2017-12-25 25 views
0

Ich habe an meiner Schule auf einem Mac für einen Monat programmiert. Wir haben C auf einer UNIX-Shell programmiert.Einschließlich grundlegende Bibliothek von C (unistd.h) auf Fenster

Jetzt bin ich wieder zu Hause und ich benutze meinen eigenen PC, der auf Fenster 10 ist. Ich habe versucht, ein ähnliches Setup zu machen, aber ich weiß nicht viel über all das. Ich habe git und bash installiert, das hat es wie eine UNIX-Shell gemacht. Außerdem habe ich den GCC-Compiler installiert.

So, jetzt, dass ich ein Basisprogramm mache, sollte es funktionieren, aber wenn ich die include <unistd.h> mache, kann die Shell es nicht finden.

Ich weiß, dass meine Frage wahrscheinlich albern ist, aber ich konnte wirklich nicht finden, wie man das Problem löst. Ich habe die Datei unistd.h heruntergeladen.

Ich fand auch diesen http://processors.wiki.ti.com/index.php/Compiler/diagnostic_messages/5

Es erklärt, dass ich in irgendeiner Art von definierten Pfad der .h Ordner setzen, soll aber ich weiß nicht, wie das zu tun.

Weiß jemand, wie ich das beheben kann?

+3

Header wie 'unistd.h' sind Standard-POSIX-Systemheader. Windows ist * jedoch * kein POSIX-System. Es hat eine eigene API und eine Reihe von Headern. – StoryTeller

+4

Nachdem das gesagt wurde, ist noch nicht alles verloren. Sie können immer eine Linux-Distribution auf einer [virtuellen Maschine] (https://en.wikipedia.org/wiki/VirtualBox) installieren und haben Zugriff auf eine solche Entwicklungsumgebung. – StoryTeller

+0

Ich empfehle sogar die Installation einer Linux-Distribution auf Ihrem persönlichen Laptop (mit, oder vielleicht sogar anstelle von Windows) –

Antwort

1

Wenn Sie GCC als Teil von Mingw oder etwas ähnliches installiert haben, sollte es eine unistd.h enthalten. Mit dem gcc-Compiler kommt man nicht sehr weit.

Wahrscheinlich möchten Sie von vorne beginnen und etwas anderes installieren als Sie (mingw oder cygwin oder richten Sie einfach eine VM wie vorgeschlagen), die eine vollständigere Umgebung bietet.

+0

Nun, die git bash, die ich installiert habe, öffnen eine Shell namens mingw64 (ich glaube, ich habe 2 differents in einem heruntergeladen). Es ist also wahrscheinlich schon installiert (wenn nicht, kein Problem von vorne zu beginnen). So sollte es schon die unistd.h enthalten haben? Vielleicht mache ich es dann falsch, ich dachte, das Schreiben von #include würde ihn den guten Pfad automatisch – Amarelle

+0

in Ihrer Frage finden, erklären, was Sie heruntergeladen haben und was Sie getan haben, um es zu installieren, und zeigen Sie das Programm, das Sie versuchen zu kompilieren , wie Sie versuchen, es zu kompilieren, und welche Fehler Sie erhalten. – ysth

+0

Ok Entschuldigung. Zuerst habe ich heruntergeladen git bash, nur um github zu verwenden. Aber es kam mit einer Unix-Shell. https://git-scm.com/download/win Dann habe ich gcc heruntergeladen, als ich sah, dass ich nicht kompilieren konnte, es installiert sich allein, ohne mich Pfad oder irgendetwas zu fragen, und die Git-Shell könnte dann kompilieren. https://sourceforge.net/projects/mingw/?source=typ_redirect Und am Ende, wie die Datei unistd.h konnte nicht in meinem gefunden werden #include , ich habe es heruntergeladen, aber es ist nutzlos, weil ich don Ich weiß nicht, wo ich es für die Shell verwenden soll. – Amarelle

Verwandte Themen