在編譯QT有關的項目的時候出現了如上錯誤,從網上下載了這個頭文件然后加入到項目里面還是不行。查了下資料,頭文件unistd.h是Linux/Unix的系統調用,包含了許多UNIX系統服務函數原型,如open、read、write、_exit、getpid等函數。在linux下能夠編譯通過的包含此頭文件的程序,在VC下編譯時出現了如下問題
fatal error C1083: Cannot open include file: 'unistd.h': No such file or directory,所以必須把這個頭文件加入到VS2010的頭文件庫里面,其它的編譯器也是如此,對於VS2010來說只要在你的默認庫文件夾下(我的電腦是C:\Program Files\Microsoft Visual Studio 10.0\VC\include)添加一個unistd.h文件即可,其內容如下:
#ifndef _UNISTD_H
#define _UNISTD_H
#include <io.h>
#include <process.h>
#endif /* _UNISTD_H */
這樣在重新編譯包含unis.h的程序就能通過了
