草庐IT

MinGW-gdb

全部标签

c++ - 使用 MinGW 静态链接到 Windows 上的 libarchive

我在我的项目中使用libarchive已经有一段时间了,它工作得很好,目前我正在动态链接到它,所以在Windows上,libarchive.dll文件必须出现在系统上。我现在想静态链接到库,这样我就不必费心分发DLL,但我在尝试实现这一点时遇到了真正的麻烦!目前,在我的make文件中,我有这样的东西:-Lpath/to//libarchive/-larchive这是有效的,但它有一个动态链接。我不知道如何强制执行静态链接。我可以看到在libarchive目录中有两个a文件,libarchive.dll.a和libarchive_static.a。我想我想链接到libarchive_st

c++ - Mingw-w64 和 TDM-GCC 一个简单的 GDI 项目的区别

我需要在Win64上为Win64(无交叉编译)构建一个简单的非商业工具(处理WindowsGDIAPI)。MinGW似乎是我的最佳选择。我以前用过32位版本,至于64位,你能告诉我以下版本之间的主要区别吗?:Mingw-w64TDM-GCC除了经典的MinGW32之外,还使用了一个简单的工具mingw-get.exe来自定义设置并跟上更新周期。现在哪个是等价的? 最佳答案 我在此处发布了MinGW/MinGW-w64/TDM-GCC的简短概述:WhatisthedifferencebetweenOrwell'sMinGWandTDM

Linux--gdb的使用

文章目录release版本和Debug版本GDB一般步骤常用命令release版本和Debug版本Release版本:该版本用于发布的最终产品版本。它会进行各种优化,以提高代码的执行效率和运行速度。编译时通常会选择较高的优化级别,此外,该版本还会进行链接优化,移除未使用的代码和数据,减少可执行文件的大小。在编译时,通常会禁用调试符号的生成,以减少文件大小和保护源代码。Debug版本:该版本用于调试和开发阶段的版本。它包含了调试所需的详细符号信息,可以帮助开发人员定位和修复代码中的错误。编译时通常会禁用大部分的优化选项,以便在调试过程中更好的观察和理解代码。那么gcc在编译时会产生什么模式呢?r

c++ - MinGW 为 MS DOS 编译

我使用Code::Blocks和MinGW在WindowsXP中编写我的C++应用程序。现在我想编译我的代码在MSDOS环境下运行,所以我可以把它放在我的DOS格式的软盘上。谁能帮帮我?提前致谢。附言我指的不是命令提示符,而是good旧的MSDOS操作系统。 最佳答案 它很旧,但是DJGPP正是为DOS开发而存在。我自2000年以来就没有更新过,但它有效。它与MinGW基本相同,但专用于DOS。 关于c++-MinGW为MSDOS编译,我们在StackOverflow上找到一个类似的问题

C++:是否需要使用相同版本的 GCC 和 GDB 进行调试

我正在使用minGW在Windows上使用C++进行开发。我目前有调试问题。我必须使用旧版本的GCC(4.4)。所以我只是想知道是否可以使用这个旧的GCC进行编译并使用新的GDB进行调试?这两者之间有什么联系?(任何有关调试器崩溃的指示也将不胜感激!我只知道我需要确保使用调试DLL) 最佳答案 GDB和GCC是独立的程序——独立的源代码库(有一些共享代码,虽然不多),通常是独立的维护者,不同的发布时间表和不同的版本号。他们确实有一些共同的文化,当然也有一些协调。GDB在向后兼容性方面相当不错。它甚至为旧版本的GCC和有时其他编译器发

c++ - 分发使用 MinGW g++ 编译的程序

假设我使用MinGW64(g++编译器)创建并编译了一个简单的程序。在我的计算机上运行此程序并在ProcessExplorer中查找程序正在使用的DLL文件,我发现(以及许多其他文件):libgcc_s_seh-1.dlllibstdc++6.dlllibwinpthread-1.dll这些是唯一位于我的MinGW安装文件夹下的。使用的其余DLL文件位于C:\Windows下。问题1:MinGWDLL文件是MinGWC++运行时库(可以这么说)吗?它们的用途是否与例如msvcrXXX.dll(XXX=Microsoft运行时库的版本)相同。问题2:如果我想在另一台没有安装MinGW的计

c++ - 使用模板调试 C++ 代码,使用 gdb 调试 STL

这里的gdb用户如何看待其使用模板和STL调试代码的能力?您是否使用任何技巧使调试更简单?也许一些Python脚本?或者您是否满意目前gdb中的状态(版本6.x,还没有尝试过7.x)?谢谢。 最佳答案 这可能有帮助:GDBSTLSupportTools 关于c++-使用模板调试C++代码,使用gdb调试STL,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/1610906/

c++ - 如何使用 GDB 打印 C++ 评估结果?

我一直在四处寻找,但无法弄清楚如何在GDB中打印出评估结果。例如,在下面的代码中:if(strcmp(current_node->word,min_node->word)>0)min_node=current_node;(上面我正在尝试一种可能的方法来检查字符串的字母顺序,但不确定它是否正确工作。)现在我可以观察min_node并查看值是否发生变化,但在涉及更多的代码中,这有时会更复杂。我想知道是否有一种简单的方法可以在当前GDB/程序流所在的线上观看测试的评估。 最佳答案 gdb中没有表达式级别的单步执行,如果这是您所要求的。您的

c++ - 使用 MinGW : Failed to execute MI command 进行 Eclipse 调试

我新安装了EclipseJuno32位,并新安装了MinGW32位,我的平台是Windows764位。当尝试调试一个简单的程序时,我可以看到非常简单的表达式,但任何更复杂的东西都会让我出错。对于以下程序中的示例:intmain(){vectorvRings;for(inti=0;i在watch窗口中,watchingvRings正常,但是试图watchvector的内容却不行:尝试观看vRings[0]:Error:Multipleerrorsreported.\FailedtoexecuteMIcommand:-var-create-*vRings[0]Errormessagefro

c++ - 如何在 gdb 中为 pretty-print 调用构造函数

在使用GDB进行调试时,我想将一个方便的变量设置为新构造的值。我正在使用Qt框架进行编程,所以我想创建一个QString,但这与问题无关,因为我想知道如何对任何类执行此操作。我试过了(gdb)set$str='QString::QString("abc")'Nosymbol"QString::QString("abc")"incurrentcontext.(gdb)set$str=QString::QString("abc")CannotresolvemethodQString::QStringtoanyoverloadedinstance(gdb)set$str=QString("a