草庐IT

universal-mingw

全部标签

c++ - 使用 mingw 编译时增加堆栈大小?

我正在编写一个递归的泛洪填充算法来查找图像中的连通分量,我的代码在MSVC2008编译器上编译和运行良好;但是mingw编译的二进制文件在运行时崩溃了。在我使用std::stack将算法转换为非递归后,一切顺利。但是如果我在某些情况下必须使用递归算法,而mingw无法处理怎么办?如何增加二进制文件的堆栈大小,是否有任何编译选项?谢谢 最佳答案 使用gcc-Wl,--stack,N其中N是堆栈大小。例如。gcc-Wl,--stack,4194304 关于c++-使用mingw编译时增加堆栈

c++ - 如何使用 MinGW + Code::Block 编译的 GUI 程序的控制台框

当我在MinGW+MSys中使用命令行编译并运行一个简单的Win32GUI程序时:$g++main.cpp-oapp-std=c++0x$./app只显示一个对话框。但是当我把这个程序放入Code::BlocksIDE并编译它时,它总是会产生一个带有对话框的黑色控制台框。在链接选项中添加-mwindows无效。ma​​in.cpp:#includeintWinMain(HINSTANCE,HINSTANCE,LPSTR,int){MessageBox(0,"Hello,Windows","MinGWTestProgram",MB_OK);return0;}我怎样才能去掉控制台框?

c++ - 将 VC++ 的 __try/__except EXCEPTION_STACK_OVERFLOW 移植到 MinGW

我正在尝试使用VC++的try-except语句将一些代码移植到MinGW:boolsuccess=true;__try{//...}__except((EXCEPTION_STACK_OVERFLOW==GetExceptionCode())?EXCEPTION_EXECUTE_HANDLER:EXCEPTION_CONTINUE_SEARCH){success=false;_resetstkoflw();}returnsuccess;是否可以使用MinGWg++编写捕获堆栈溢出异常的代码? 最佳答案 您需要手动调用注册异常处理的

c++ - mingw "too many sections"错误,同时在 Qt 中编译巨大的头文件

我试图在Qt(win7)上用mingw32(491_32)编译exprtk.hpp文件(https://exprtk.codeplex.com/)。在编译过程中,我给出了这个错误信息:debug\main.o:-1:error:toomanysections(35325)我注意到exprtk.hpp文件很大(>32000行)。我一直在尝试对编译器进行优化标志,但它并没有帮助八点。如果有人帮助我,我将不胜感激......问候, 最佳答案 您可以通过添加编译标志-flto-Wl,-allow-multiple-definition并且可

c++ - 你如何在 Windows 上为 MinGW 编译 WebkitGTK

我在C++、GCC、MinGW和Cygwin方面的经验非常有限。但是,我已经对其进行了测试,并意识到Cygwin并不是我想要做的事情的理想解决方案。尽管带有GTKWebkit的GTK+程序在Cygwin上运行良好,但在将最终项目打包为单个.exe方面并不是很好。对cywin1.dll等的依赖...是一个交易破坏者。我测试了MinGW,它完美地适用于Windows中的标准GTK应用程序。而且文件大小很大!我测试了一个标准的GCC编译器来在Mac上编译一个GTK和WebKitGtk应用程序并且它完美地工作。但在Windows世界中,我对GTK和WebkitGTK感到困惑。我想要做的是使用M

c++ - 如何设置 Clang 以使用 MinGW libstdc++

我一直在尝试在Windows上设置Clang。到目前为止,我幸免于使用VisualStudio和CMake进行构建,并遇到了一些其他的惊喜。但事实证明,Clang没有自带C++stdlib实现,所以我决定使用GCC4.7.0为MinGW构建的libstdc++。首先,我将搜索路径添加到我的HeaderSearchOptions。headeropts->AddPath(path,clang::frontend::IncludeDirGroup::CXXSystem,true,false,false);路径正是header所在的位置-我从Windows资源管理器中复制并粘贴了它(然后将反斜

c++ - 如何将 GLEW 与 MinGW 一起使用

这个问题在这里已经有了答案:Whatisanundefinedreference/unresolvedexternalsymbolerrorandhowdoIfixit?(38个答案)关闭7年前。我试图使用glew32.lib文件链接到我的项目中,而不是我自己编译Glew源代码以获得glew.a文件。现在,我的项目中有这些链接错误:g++-oChapter10(OpenCLTest).exesrc\Chapter10(OpenCLTest).o-lopengl32-lglew-lglut32-lglu32-lopenclsrc\Chapter10(OpenCLTest).o:Chapt

c++ - 如何更新到 mingw-gcc 4.8.2?

我想在c++11中使用正则表达式,gcc4.8.2支持它。但是MinGW安装程序最多只支持gcc4.8.1。我怎样才能将它更新到gcc4.8.2? 最佳答案 您可以自己手动安装。4.8.2availablehere有一个MinGW-w64发行版.你需要7zip提取文件内容。将其解压缩到您选择的位置后,只需将bin子目录从那里添加到您的环境path即可。例如,如果您将工具链提取到x:\mingw32-4.8.2中,则使用添加x:\mingw32-4.8.2\bin>setxpath"%path%;x:\mingw32-4.8.2\bi

c++ - "Universal character name conversion"在 C++ 中是什么意思?

C++98显然将此作为编译阶段的标准之一。什么意思,为什么一开始就执行? 最佳答案 通用字符名称类似于\uFFFD或\U0010FFFD。这是一种在源代码中写入字符的方法,其中源代码编码不包含该字符。C++规定在翻译的第一阶段将不在基本源字符集中的字符转换为通用字符名称。这样做的原因是通用字符名称和不在基本源字符集中但在源字符集中的字符得到相同的处理。as-if规则意味着实际上不需要实现来执行此通用字符名称转换,只要它把写为通用字符名称的扩展字符与字面上显示的扩展字符相同在源代码中。 关

c++ - 使用 MinGW/MSYS 遍历 Win32 API 堆栈?

我必须开发一个堆栈跟踪遍历到我们的win32API平台支持,以捕获具有JAVA堆栈跟踪行为的任何异常。实际上,我们得到了Linux平台的完整功能实现。首先,我尝试使用win32CaptureStackBackTraceAPI实现堆栈遍历机制。但是这个方法并没有集成在mingw的实际winbase头文件中(使用MSYS/MinGW5.1.x)...所以我决定按照此链接的说明尝试使用dbgheader机制:http://sites.google.com/site/kenscode/prime-programs/boinc-with-mingw-on-win32但我又失败了,遇到了我无法解决