Если я пытаюсь скомпилировать программу с
#include <pthread.h>
в нем я получаю ошибку:
pthread.h: No such file or directory
Действительно ли возможно заставить это компилировать в среде Windows?
Я использую Vista с последним MinGW.
Я не хочу использовать Microsoft Windows Services для Версии 3.5 UNIX, поскольку я должен буду переместить это в среду Unix.
Pthread.h
- заголовок для API UNIX / Linux (POSIX) для потоков. Слой POSIX, такой как Cygwin, вероятно, будет компилировать приложение с #inClude
.
Нативные Windows Threading API открывается через #include
, и он работает немного по-разному для резьбы Linux.
Тем не менее, есть замена библиотеки «клея», поддерживаемая в http://sourceware.org/pthreads-win32/ ; Обратите внимание, что оно имеет несколько небольших несовместимости с MingW / VS (E.g. см. здесь ).
Как упоминалось @ninefingers, Pthreads - это только UNIX. Только POSIX, правда.
, который сказал, что Microsoft имеет библиотеку, которая дублирует Pthreads:
Есть, как я помню, два распределения инструментов GNU для Windows: Mingw и Cygwin.
Я ожидал, что Cygwin Work - было сделано много усилий, чтобы сделать эту среду «Стадиарную стадию».
MINGW Toolchain использует msvcrt.dll для его времени выполнения и, следовательно, будет выдержать API MSVCRT «Thread»: _BegIntHoread , который определен в