2016-03-06 62 views
14

Sto cercando di usare CLion su Windows e ho installato il mio ambiente usando cygwin ma sto ricevendo questo avviso nelle impostazioni. Inoltre, è quasi impossibile eseguire il debug perché il debugger interrompe semplicemente la visualizzazione delle informazioni del debugger nel mezzo.CLion - GDB: la versione corrente è GNU gdb (GDB) (Cygwin 7.10.1-1) 7.10.1; la versione supportata è 7.8.x

+0

Ho lo stesso problema, ho trovato questo [link] (http: // Cygwin. mirror.constant.com/x86_64/release/gdb/) witch contiene gdb 7.8.2 ma bisogna ancora trovare il modo di installarlo – HDJEMAI

risposta

12

Ho avuto lo stesso problema. Non ero in grado di far funzionare CLion con gdb 7.10.x ma ero in grado di fare installare cygwin gdb 7.8-1. Il mio metodo dovrebbe funzionare per installare qualsiasi versione desiderata.

I seguenti passaggi descrivono il modo in cui sono riuscito a farlo, sono un novizio che utilizza cygwin, quindi forse alcuni di essi non sono necessari.

  1. Creare una directory di cache per Cygwin e posizionare il cygwin setup.exe in esso (nel mio caso C:\cygwinCache). [Source]
  2. Eseguire il setup.exe e seguire i normali passaggi per l'installazione da Internet. Selezionare Installa da Internet, selezionare la directory root cygwin (nel mio caso C:\cygwin64), creare e selezionare una directory all'interno della directory cygwin della cache (nel mio caso C:\cygwinCache\downloaded), selezionare l'opzione di connessione richiesta dalla rete, quindi selezionare qualsiasi server con gdb disponibile (Ho selezionato http://cygwin.mirror.constant.com) e fare clic su Avanti. Questo scaricherà e analizzerà un file setup.ini che contiene i pacchetti disponibili nel server selezionato. Questo file setup.ini si troverà nella directory della cache in una sottodirectory che prende il nome dal server selezionato (C:\cygwinCache\downloaded\http%3a%2f%2fcygwin.mirror.constant.com%2f\x86_64).
  3. Dal collegamento che @H. DJEMAI trovato (this one) scarica i file di installazione e di origine di gdb della versione desiderata (ho scaricato gdb-7.8-1.tar.xz e gdb-7.8-1-src.tar.xz). Come backup, ho caricato questi file in here.
  4. Nella directory in cui si trova il file setup.ini creare la directory \release\gdb. In questa nuova directory \release\gdb posizionare entrambi i file gdb scaricati nell'ultimo passaggio. Ora avete l'installazione gdb e file di origine nei seguenti percorsi:

    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 
    
  5. Aprire il file setup.ini, e cercare una linea con questa stringa: @ gdb. Questa sezione contiene le informazioni sul pacchetto gdb e informazioni sui file che può contenere. Esso dovrebbe essere simile a questo:

    @ 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 
    
  6. Ora modificare il file per rendere Cygwin installare la versione che si desidera. Per ottenere questo modifica le righe in cui è indicato version, install e source con le informazioni dei file che si desidera installare. Ho modificato le righe dopo la stringa [prev] sostituendo 7.8-1 anziché 7.9.1-1, quindi cygwin punta alla posizione corretta. Si noti che le linee che iniziano con install: e source: contengono la posizione relativa dei file precedentemente scaricati e inseriti nella directory \release\gdb. Dopo questa posizione relativa il file setup.ini contiene la dimensione in byte e SHA-512 del file specificato. Puoi ottenere la dimensione del morso per il tuo file nelle proprietà del file. Per ottenere SHA-512 devi usare altri software come this one.Nel caso dei file 7.8-1 ho ottenuto il seguente:

    @ 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 
    
  7. Non dimenticare di salvare il file setup.ini dopo aver modificato esso.

  8. Apre la configurazione di cygwin all'interno della directory della cache. Ora invece di selezionare l'opzione Installa da Internet, selezionare Installa dalla directory locale, quindi impostare la directory principale e come directory del pacchetto locale selezionare la directory della cache (C:\cygwinCache\downloaded). Analizzerà il file setup.ini e, se lo hai modificato, mostrerà la griglia per installare, aggiornare o disinstallare i pacchetti. Se l'analisi fallisce, verrà mostrato un errore.
  9. cercare il pacchetto gdb nella categoria Devel, dovrebbe apparire installato con una versione corrente: enter image description here
  10. Clicca esso in cui si dice Keep fino a vedere la versione desiderata. Quindi fare clic su Avanti, questo avvierà l'installazione, quando il processo è finito, fare clic su Fine.
  11. Il gioco è fatto. È possibile aprire il terminale cygwin e digitare gdb --version e vedere che la versione corretta è installato: enter image description here

Dopo tutti questi passaggi, ora è possibile aprire Clion e andare su Impostazioni> Toolchains e vedere il risultato: enter image description here

PS. Ho raggiunto questo obiettivo con Cygwin Setup versione 2.873 (64 bit).

+3

Funziona alla grande !!! Merita una stella! –

+0

Perfetto :) grazie – Knobik

6

Mentre la risposta di LuissRicardo sembra funzionare, sono imbattuto in una soluzione online che è molto più semplice. Vedere: http://kennyroh.blogspot.co.uk/2016/04/cygwin-clion-gdb-current-version-is-gnu.html

  1. Scarica gdb-7.8-2.tar.xz da http://cygwin.mirror.constant.com/x86_64/release/gdb/ e metterlo da qualche parte nel vostro filesystem Cygwin.

  2. Aprire un terminale Cygwin in quella posizione ed eseguire: tar Jxvf gdb-7.8-2.tar.xz. Le istruzioni utilizzano zxvf, ma non funzioneranno per gli archivi .xz.

  3. cd nella cartella appena estratta (per me questo era solo cd usr).

  4. Eseguire il comando cp -R * /usr/ per copiare questo nel percorso corretto nel filesystem.

  5. Eseguire gdb --version solo per assicurarsi che sia impostato su 7.8.2. Se non è poi magari provare a riavviare Cygwin, e se questo non funziona allora forse scrivere un commento sul StackOverflow o qualcosa del genere: p

+0

Grazie, mi ha salvato un po 'di tempo. gdb --version ora mostra 7,8 invece di 7.10. –