C 通过mingw完成win32项目时缺少sal.h

C 通过mingw完成win32项目时缺少sal.h,c,windows,eclipse,mingw,winapi,C,Windows,Eclipse,Mingw,Winapi,错误消息: 致命错误:sal.h:没有这样的文件或目录cstudy第11行,外部 位置:C:\Program Files\Microsoft SDK\Windows\v7.0A\Include\specstrings.h C/C++问题 但是当我将VC/include添加到这个项目中时,我收到了大量错误消息。VC/include/sal.h似乎不是GCC的标准头文件 源代码非常简单: #include "windows.h" int WINAPI WinMain(HINSTANCE hInsta

错误消息:

致命错误:sal.h:没有这样的文件或目录cstudy第11行,外部 位置:C:\Program Files\Microsoft SDK\Windows\v7.0A\Include\specstrings.h C/C++问题

但是当我将VC/include添加到这个项目中时,我收到了大量错误消息。VC/include/sal.h似乎不是GCC的标准头文件

源代码非常简单:

#include "windows.h"
int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTR lpCmdLine,int nCmdShow)
{

    return 0;
}
环境:

Windows 7.0A SDK VC 2010 明 CDT/ECLIPSE。 谢谢。

不,sal.h头不是GCC/MinGW的一部分,但是您可以将VC/include/作为include目录添加到eclipse中

备选方案:全部移动!您的mingw或project include目录的所需标题。来自MinGw的是:/include

无论如何。sal.h,如果你安装了Windows SDK,那么它就不会 位于SDK目录中,但如果选择 安装编译器及其附带的工具。 这是因为在CRT标头和 Windows标题。因此,您需要安装VS编译器和工具 与SDK一起使用。然后您将发现编译器将 默认情况下安装在%ProgramFiles%\Microsoft Visual Studio下 2010\VC和sal.h将包含在该路径下。在64位上 系统默认情况下,它将位于%ProgramFilesx86%之下

资料来源:

见:

!
我只是遇到了这个问题。我似乎无法通过MS Windows版本的mingw获取sal.h头文件,但我的Fedora Core 18机器上的yum whatprovides\*/sal.h启动了mingw头文件包。我下载了源程序包,即yumdownloader-source mingw headers,在file roller中打开.tar.gz文件,抓取sal.h文件,并将其放在我的MS Windows机器上的/c/mingw/include中

同一个包有dsound.h,这是下一个丢失的头文件


我从未尝试在Fedora Core下使用mingw交叉编译MS Windows应用程序,但也许是时候了…:-

您正在尝试用mingw编译windows代码吗?您可能应该使用visual studio编译器来执行此操作。您是否安装了MinGW WIN32 API包?另外,您应该使用include,因为它是一个系统头文件。