用GCC编译WIN32代码 我尝试通过GECC通过DVC++(MIWW GCC)编译一些C++ Win32代码。它发现它无法链接对象,并且没有给我一条明确的错误消息:“[PathToSource]>错误1”

用GCC编译WIN32代码 我尝试通过GECC通过DVC++(MIWW GCC)编译一些C++ Win32代码。它发现它无法链接对象,并且没有给我一条明确的错误消息:“[PathToSource]>错误1”,c++,winapi,gcc,C++,Winapi,Gcc,在Eclipse(MinGW-GCC)上尝试了同样的方法,并编译了它。但是,并不是所有的资源都显示出来,因为我有一个图标设置为编译为应用程序的图标,它是从资源文件加载的。在运行应用程序时,我还会在后台看到一个控制台窗口 这是什么原因?如何使用代码编译资源文件,并避免在后台加载控制台窗口 我还想知道是否有一种方法可以通过GCC在Linux中编译WIN32代码,或者有一种方法可以为同一个编译器移植它 我尝试编译一些C++ Win32 通过DevC++(MinGW)使用GCC编写代码 GCC)。这说明

在Eclipse(MinGW-GCC)上尝试了同样的方法,并编译了它。但是,并不是所有的资源都显示出来,因为我有一个图标设置为编译为应用程序的图标,它是从资源文件加载的。在运行应用程序时,我还会在后台看到一个控制台窗口

这是什么原因?如何使用代码编译资源文件,并避免在后台加载控制台窗口

我还想知道是否有一种方法可以通过GCC在Linux中编译WIN32代码,或者有一种方法可以为同一个编译器移植它

我尝试编译一些C++ Win32 通过DevC++(MinGW)使用GCC编写代码 GCC)。这说明它未能链接 那些东西,它没有给我一个 清除错误消息:“[PathToSource]> 错误1”

是否包含Windows SDK的路径?在我的计算机上,它位于:

C:\ProgramFiles(x86)\Microsoft SDK\Windows\v7.0A\Lib\x64

(注意:我的计算机上安装了Visual Studio)

用适当的s编译你的程序

在Eclipse上尝试了同样的方法 (MinGW GCC)并编译。然而, 并非所有资源都如我所示 将图标设置为编译为 应用程序的图标,已加载 从资源文件。我也得到了一份工作 控制台窗口在后台显示为I 运行应用程序

检查资源设置以查看Eclipse引用Windows库的位置

这是什么原因?我怎么能 使资源文件使用 该代码还避免了加载 后台的控制台窗口

在VisualStudio中开发应用程序。如果你负担不起VisualStudio,你是一个业余爱好程序。 我还想知道有没有办法 通过在Linux中编译WIN32代码 GCC,或者一种为相同的 编译器

如果你指的是WINAPI,那么不,据我所知不是。如果你想要兼容性,你应该坚持标准的C++库。 但是,您可能会发现有一些通用库非常有用:


  • 尝试在命令提示符下编译,看看会发生什么

    对于资源文件,请在命令提示符下尝试此操作


    windres resource\u file.rc-o resource\u file.o
    最后构建代码,
    g++resource\u file.o-o app.exe app.cpp
    Eclipse中的资源文件:

    在项目的构建步骤中,需要输入命令以及资源及其输出文件的完整路径

    windres ../Resources/resource_file.rc -o ../Debug/resource_file.o
    
    在链接器选项项目的工具设置中,需要添加资源输出文件的路径,以便将资源链接到可执行文件中

    ../Debug/resource_file.o
    
    避开控制台窗口:

    仅需要为GUI指定链接器标志

    -mwindows
    
    日食中的


    在项目工具设置的链接器标志中输入标志

    感谢第一个提示,我没有这样做。控制台是因为可执行文件的子系统设置为CLI,而不是GDI。尝试链接器开关--subsystem。除了ruslik注释外,请检查:您没有说明其他问题,但我忽略了这一点。