草庐IT

MinGW-gdb

全部标签

c++ - 为什么 VS 要求数组大小为常量,而 MinGW 不需要?有办法解决吗?

我已经将我使用code::blocks编写的Mingw的一些代码移植到visualstudio和他们的编译器,它发现了很多错误,我的数组大小必须是常量!为什么VS需要恒定大小而mingw不需要?例如constintlen=(strlen(szPath)-20);charszModiPath[len];len变量用红色下划线表示它是一个错误并表示“预期的常量表达式”我能想到的解决这个问题的唯一方法是......char*szModiPath=newchar[len];delete[]szModiPath;我是否必须将所有内容都更改为动态的,或者在VS中有其他方法吗?

c++ - 无法在gdb中调用带有引用参数的函数

对于这个函数:voidfoo_ref(constint&i){cout在gdb中调用失败:(gdb)callfoo_ref(5)Attempttotakeaddressofvaluenotlocatedinmemory.当然,在这个简单的例子中,不需要使用引用作为参数。如果我使用普通的“int”,那没问题。实际上真正的例子是一个模板函数,像这样:templatevoidt_foo_ref(constT&i){cout当“T”为“int”时,出现上述问题。这是gdb中的错误吗?或者我可以在gdb中调用这样的函数吗? 最佳答案 这是可能

c++ - Netbeans 和 MinGW-w64

我正在尝试在win764位上配置我的NetBeans,以使用MinGW-w64。所以我将以下编译器路径放入%PATH%变量中:C:\mingw-w64-bin_i686\mingw\binC:\minGw-MSYS\msys\binC:\mingw-w64-bin_i686\libexec\gcc\x86_64-w64-mingw32\4.7.0然后我打开了NetBeans并进行了配置:TheconfigurationinNetBeans我试图编译一个小测试程序但我收到了这个错误:g++.exe:fatalerror:-fuse-linker-plugin,butliblto_plug

【Linux】环境基础开发工具的使用之gdb详解(三)

前言:上一篇文章中我们讲解了Linux下的gcc与g++的使用,今天我们将进一步的学习gdb与makefile来帮我们更好的理解与使用基础开发工具。💖博主CSDN主页:卫卫卫的个人主页💞👉专栏分类:Linux的深度刨析👈💯代码仓库:卫卫周大胖的学习日记💫💪关注博主和博主一起学习!一起努力!目录标题Linux下基础开发工具gdb调试方法1.启动gdb2.查看源代码3.运行程序4.设置断点5.查看断点信息6.执行下一行代码。7.查看变量8.退出gdbLinux下基础开发工具gdb调试方法程序的发布方式有两种,debug模式和release模式Linuxgcc/g++出来的二进制程序,默认是rele

c++ - Windows 上 Mingw 的 DLL 依赖项

我正在开发一个程序,该程序使用autotools作为其构建系统并在Linux上编译良好。为了为windows构建,我试图让mingw交叉编译器为windows工作。现在,当我在linux上编译并移动到windows时,我当然会丢失一些默认情况下未安装在windows上的dll。这会导致缺少dll错误。由于LGPL的限制,我无法静态链接我的程序。所以我的问题是在这种情况下交叉编译的正确方法是什么?我觉得我需要将我的exe包装在一个安装程序中,该安装程序会自动解析并安装Windows的dll依赖项,但我无法找到解释如何执行此操作的内容。基本上我在考虑yum/apt-getforwindow

c++ - 无法使用 GDB 进入共享库中的函数

我正在尝试调试一个使用GDB从许多共享库构建的应用程序。gdb的开始:prompt$gdbGNUgdb(GDB)RedHatEnterpriseLinux(7.2-50.el6)Copyright(C)2010FreeSoftwareFoundation,Inc.LicenseGPLv3+:GNUGPLversion3orlaterThisisfreesoftware:youarefreetochangeandredistributeit.ThereisNOWARRANTY,totheextentpermittedbylaw.Type"showcopying"and"showwarra

c++ - 使用 MinGW 在 C++ 中生成异常堆栈跟踪

帖子“HowtogenerateastacktracewhenmygccC++appcrashes”解释了应用程序崩溃时如何生成堆栈跟踪。但gcc版本不适用于windowsMinGW。事实上,由于缺少headerexecinfo.h,它甚至无法编译。在windowsxp及更高版本上是否已经有适用于MinGW的东西?编辑Stackwalking可以通过下面提到的步骤实现。但是当我在异常发生后尝试遍历catchblock中的堆栈时,我没有得到想要的结果。我只能得到抛出异常的函数的名称,然后它显示列表-->main-->等等步骤:为帖子提供的第一个答案Win32APIstackwalkwit

c++ - 在 Windows 上使用 MinGW 构建黄金链接器,未在此范围内声明 FLEX/bison 'YYSTYPE'

我正在尝试使用mingw构建包含在GNUbinutils中的gold链接器。我采取的步骤-使用安装程序安装mingw和所有包。使用Windows安装程序将Windows版本的FLEX安装到默认位置。在mingwshell的gold链接器目录中运行./configure,这似乎工作正常运行make,这是我遇到一些错误的地方。我已经将./configure和make的完整输出包含在此处的pastebin中:http://pastebin.com/1XLkZVVm但重要的是:make[2]:Enteringdirectory`c:/binutils-2.23.1/binutils-2.23.

c++ - 如何更改 eclipse cdt mingw32 中的内置工具链

我正在使用cdt/mingw在Windows上进行编译。我喜欢免费编译警告。我收到以下警告:auto-importinghasbeenactivatedwithout--enable-auto-importspecifiedonthecommandline.下面的页面建议处理它的方法是将那个选项添加到ld的命令行。4.8ldandWIN32(cygwin/mingw)问题是,如何更改内置工具链的默认命令行开关?我也想设置gcc的警告级别。 最佳答案 您必须通过gcc的-Wlparameter将参数发送到链接器:-Wl,optionP

c++ - Eclipse C++ MinGW - 无法启动程序<已终止>

我是Eclipse的新手。我使用EclipseIndigo和MinGW来编写C++程序。创建一个Helloword项目没问题,但我可以运行该程序。它在启动时已被终止!这是构建日志(Ctrl+B):"****构建项目Hl的配置调试********InternalBuilder用于构建****无需为Hl构建”这是按Ctrl+F11运行时得到的结果:“"谁能告诉我如何解决这个问题? 最佳答案 您需要确保将C:\MinGW\bin包含到路径环境中此外,请确保您不包含这样的路径->C:\MinGW\msys\1.0\bin如果这样做,构建的应