Альтернативный заголовочный файл unistd.h для Visual Studio 2010 - PullRequest
3 голосов
/ 16 июня 2011

Я компилирую код в Visual Studio 2010, который включает заголовочный файл unistd.h.Поскольку окна не поддерживают заголовочный файл unistd.h, я ищу альтернативный заголовочный файл или есть какой-либо способ настроить его так, чтобы я мог также скомпилировать его в Visual Studio.

Ответы [ 3 ]

9 голосов
/ 17 марта 2014

Попробуйте включить io.h, он эквивалентен unistd.h в MSVC. если вы хотите сохранить совместимость, попробуйте это:

#ifdef _WIN32
#include <io.h>
#else
#include <unistd.h>
#endif
4 голосов
/ 04 октября 2011

Лучше всего вместо того, чтобы пытаться вставить неподходящий заголовочный файл в Windows, просто удалить строку:

#include <unistd.h>

, попробуйте скомпилировать код.

Вы можете обнаружить (если вам чрезвычайно повезло), что он вообще не использует никаких функций.

Однако, более вероятно, что есть определенные вещи, которые он будет использовать из этого заголовка и любых связанных библиотек, и вам нужно будет либо реализовать их, либо найти эквивалент Windows.

Если бы вы хотели сохранить код как можно более переносимым, я бы создал файл WindowsUniStd.h (и связанный с ним исходный файл), чтобы реализовать необходимый минимум, необходимый программе.

0 голосов
/ 04 октября 2011

Если вам нужна минимальная среда GNU для Windows с некоторыми функциями unistd.h, вам следует сначала обратиться к проекту MinGW .Если вам повезет, вы можете вообще не использовать их скомпилированные библиотеки.

Если этого недостаточно, вы портируете программу и переносите ее в плохую систему.Windows - вычислительная заторможенность, предоставление полного unistd.h - задача Herculean, и вам, вероятно, лучше либо переписать приложение для удаления ссылок на unistd.h, либо использовать Cygwin.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...