CLION - GDB:当前版本是GNU gdb(GDB)(Cygwin 7.10.1-1)7.10.1; 支持的版本是7.8.x.

Rag*_*hta 14 windows cygwin gdb jetbrains-ide clion

我试图在Windows上使用CLion并使用cygwin安装我的环境但是我在设置中收到此警告.而且,调试几乎是不可能的,因为调试器只是停止在中间显示调试器信息.

Lui*_*rdo 12

我遇到了同样的问题.我无法让CLion与gdb 7.10.x一起工作,但我能够使cygwin安装gdb 7.8-1.我的方法应该可以安装你想要的任何版本.

以下步骤描述了我设法做到的方式,我是使用cygwin的新手,所以可能其中一些是不必要的.

  1. 为cygwin创建一个缓存目录并将cygwin setup.exe放入其中(在我的例子中C:\cygwinCache).[资源]
  2. 执行setup.exe并按照通常的步骤从Internet安装.选择从Internet安装,选择你的cygwin根目录(在我的例子中C:\cygwin64),创建并选择你的cygwin缓存目录中的一个目录(在我的例子中C:\cygwinCache\downloaded),选择你的Internet连接所需的连接选项,然后选择任何有gdb可用的服务器(I选中http://cygwin.mirror.constant.com)并单击"下一步" 这将下载并解析setup.ini包含所选服务器中可用软件包的文件.此setup.ini文件将位于以您选择的服务器命名的子目录中的缓存目录中(C:\cygwinCache\downloaded\http%3a%2f%2fcygwin.mirror.constant.com%2f\x86_64).
  3. @H的链接.DJEMAI发现(这个)下载你想要的(我下载的版本gdb的安装源文件gdb-7.8-1.tar.xzgdb-7.8-1-src.tar.xz).作为备份,我在这里上传了这些文件.
  4. 在文件所在的目录中setup.ini创建\release\gdb目录.在这个新创建的\release\gdb目录中,放置您在最后一步中下载的两个gdb文件.现在,您在以下路径中拥有gdb安装和源文件:

    C:\cygwinCache\downloaded\http%3a%2f%2fcygwin.mirror.constant.com%2f\x86_64\release\gdb\gdb-7.8-1.tar.xz
    C:\cygwinCache\downloaded\http%3a%2f%2fcygwin.mirror.constant.com%2f\x86_64\release\gdb\gdb-7.8-1-src.tar.xz
    
    Run Code Online (Sandbox Code Playgroud)
  5. 打开setup.ini文件,找到一个包含此字符串的行:@ gdb.本节包含gdb包的信息以及有关它可能包含的文件的信息.它应该如下所示:

    @ gdb
    sdesc: "The GNU Debugger"
    ldesc: "The GNU debugger, allows you to debug programs written in C, C++,
    and other languages, by executing them in a controlled fashion
    and printing their data."
    category: Devel
    requires: cygwin libexpat1 libiconv2 libintl8 liblzma5 libncursesw10 libreadline7 python
    version: 7.10.1-1
    install: x86_64/release/gdb/gdb-7.10.1-1.tar.xz 2670932 cd1fa152888faa3e4cb8e1d075604fb2e039d73acdd159d7c9553741fd7710778c742495c93476b234e3386d54bd5bdc5275007290b6eb940d70197feb21b573
    source: x86_64/release/gdb/gdb-7.10.1-1-src.tar.xz 18542336 758428a83148af8425cff2712ac15d842f449d824f0edc9bb8db1d1d84bf963e2f371372d0c645408c202914ffb088a9da32be5a9b62a637a71f2fe9b7d4614f
    [prev]
    version: 7.9.1-1
    install: x86_64/release/gdb/gdb-7.9.1-1.tar.xz 2550148 f62f65865a11757b945f431a3662e16d0357dc9a0cbc720d16f5e99543cd3231f34bacd245daeb113ad38501358d9b1e7d128a1a45871d02c2bfb1c15891fbcb
    source: x86_64/release/gdb/gdb-7.9.1-1-src.tar.xz 17888340 b90d198404a0a16268b443f4a4ec9672dac1d531f3fbda848f807fee7c004f5394e1985253c64ab0cdc2dcf7c088645c60edbf8e9f39dce0f149bce4b11f5085
    
    Run Code Online (Sandbox Code Playgroud)
  6. 现在编辑文件以使cygwin安装所需的版本.要实现此目的,请修改它所说的行version,install以及source要安装的文件的信息.我在[prev]字符串替换后修改了行7.8-1而不是7.9.1-1cygwin指向正确的位置.请注意,以先前下载并放在目录中的文件的相对位置开头install:source:包含这些行\release\gdb.在此相对位置之后,该setup.ini文件包含指定文件的字节大小和SHA-512.您可以在文件属性中获取文件的咬合大小.要获得SHA-512,你必须使用像这样的其他软件.在7.8-1文件的情况下,我得到以下内容:

    @ gdb
    sdesc: "The GNU Debugger"
    ldesc: "The GNU debugger, allows you to debug programs written in C, C++,
    and other languages, by executing them in a controlled fashion
    and printing their data."
    category: Devel
    requires: cygwin libexpat1 libiconv2 libintl8 liblzma5 libncursesw10 libreadline7 python
    version: 7.10.1-1
    install: x86_64/release/gdb/gdb-7.10.1-1.tar.xz 2670932 cd1fa152888faa3e4cb8e1d075604fb2e039d73acdd159d7c9553741fd7710778c742495c93476b234e3386d54bd5bdc5275007290b6eb940d70197feb21b573
    source: x86_64/release/gdb/gdb-7.10.1-1-src.tar.xz 18542336 758428a83148af8425cff2712ac15d842f449d824f0edc9bb8db1d1d84bf963e2f371372d0c645408c202914ffb088a9da32be5a9b62a637a71f2fe9b7d4614f
    [prev]
    version: 7.8-1
    install: x86_64/release/gdb/gdb-7.8-1.tar.xz 2491984 4c8d81984fe2ccbf92614c857737a42c4ec0c4016a5f8cf1dbc0fd117a1978baa7a8eadd2415a6d52041a1eecbe6b4e1373ba6850db6584869311a5e02a6e3b2
    source: x86_64/release/gdb/gdb-7.8-1-src.tar.xz 17669132 a71b6886774cb004baa7dc88ed767983a72fc94c7585bd79ff64c2bd2071c411cf0de76584c56aa3553d9541172eaf31f1dd142a6dedec50c5446ff2986c6d48
    
    Run Code Online (Sandbox Code Playgroud)
  7. setup.ini修改后不要忘记保存文件.

  8. 打开缓存目录中的cygwin设置.现在,不要选择从Internet安装选项,而是选择从本地目录安装,然后设置根目录,并选择本地包目录选择缓存目录(C:\cygwinCache\downloaded).它将解析setup.ini文件,如果您成功编辑它,它将显示要安装,升级或卸载软件包的网格.如果解析失败,将显示错误.
  9. 在Devel类别下查找gdb包,它应该显示与当前版本一起安装: 在此输入图像描述
  10. 单击它所在的位置,Keep直到看到所需的版本.然后单击"下一步",这将开始安装,完成该过程后,单击"完成".
  11. 你完成了.您可以打开cygwin终端并键入gdb --version并查看是否安装了正确的版本: 在此输入图像描述

完成所有这些步骤后,现在您可以打开clion并转到设置>工具链并查看结果: 在此输入图像描述

PS.我用cygwin setup版本2.873(64位)实现了这一点.


小智 7

虽然LuissRicardo的答案似乎有效,但我偶然发现了一个更直接的在线解决方案.请参阅:http://kennyroh.blogspot.co.uk/2016/04/cygwin-clion-gdb-current-version-is-gnu.html

  1. gdb-7.8-2.tar.xzhttp://cygwin.mirror.constant.com/x86_64/release/gdb/下载并将其放在Cygwin文件系统中的某个位置.

  2. 在该位置打开Cygwin终端,然后运行:tar Jxvf gdb-7.8-2.tar.xz.说明使用zxvf,但这不适用于.xz档案.

  3. cd进入你刚提取的文件夹(对我来说这只是cd usr).

  4. 运行该命令cp -R * /usr/将其复制到文件系统中的正确位置.

  5. 运行gdb --version只是为了确保它设置为7.8.2.如果它不是那么可能尝试重新启动Cygwin,如果这不起作用,那么可能发布在StackOverflow或其他东西:p