Pipes/Forks unter MinGW mit GCC

mc_gulasch

Erfahrenes Mitglied
Heyho,

ich versuch grad ein C-Programm, das mit pipe() und fork() arbeitet unter Msys zum laufen zu bringen. Ich kompilier das ganze mittels gcc.

Daten:
Windows 2k
Msys 1.0
MinGW32 3.4.5
gcc 3.4.5 (mingw special)

Die Header im Programm:
Code:
#include <stdio.h>
#include <unistd.h>
#include </mingw/include/sys/types.h>
...

Da ich mich mit gcc nicht sonderlich gut auskenn, ist mein Aufruf blauäugig mal ohne Optionen:

Code:
$ gcc main.c 
C:/DOKUME~1/mga208/LOKALE~1/Temp/ccmabaaa.o:main.c:(.text+0x16e): undefined reference to `pipe'
C:/DOKUME~1/mga208/LOKALE~1/Temp/ccmabaaa.o:main.c:(.text+0x1b6): undefined reference to `fork'

Die Fehlermeldung sagt mir leider nix. Linker-Fehler vielleicht? Ich weiß auch nicht, was ich ändern soll, damit er die Dinger endlich kennt. Fehlt mir ne Option? Über

Code:
gcc --help

krieg ich auch nicht so die wünschenswerten Optionen und auch :google: bringt mich bei Eingabe der Fehlermeldung nicht weiter.
Wer erbarmt sich einem ein bisschen die Welt zu erklären

Danke sagt das Gulasch!
 
Hi.

Die Betriebssystemfunktionen fork und pipe sind -- nun ja, betriebssystemspezifisch. ;-)

Da MinGW nur ein "Kompatibilitätslayer" für Microsofts C Runtime Library ist, und Windows keine POSIX Plattform werden diese Funktionen nicht unterstützt.

Du könntest die Windows API Funktionen CreateProcess, CreatePipe etc. verwenden. Oder du nutzt Cygwin.

Gruß
 

Neue Beiträge

Zurück