# [RISOLTO] GDB - Cannot find new threads: generic error

## krono85

Salve a tutti.

Ho un problemino a debuggare del codice scritto in c++ utilizzando le gtkmm. Ottengo una cosa del genere:

```

warning: Can not parse XML syscalls information; XML support was disabled at compile time.

GNU gdb (Gentoo 7.0 p2) 7.0

Copyright (C) 2009 Free Software Foundation, Inc.

License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>

This is free software: you are free to change and redistribute it.

There is NO WARRANTY, to the extent permitted by law.  Type "show copying"

and "show warranty" for details.

This GDB was configured as "x86_64-pc-linux-gnu".

For bug reporting instructions, please see:

<http://bugs.gentoo.org/>...

Reading symbols from /home/krono/workspace/Workspace_cpp/Art/Art...done.

(gdb) break Art_scene::render() 

Breakpoint 1 at 0x40c171: file Art_scene.h, line 226.

(gdb) run

Starting program: /home/krono/workspace/Workspace_cpp/Art/Art 

[Thread debugging using libthread_db enabled]

Cannot find new threads: generic error

```

La mia ipotesi è che ci siano dei problemi per quanto riguarda le librerie. Ma non riesco 

a venirne a capo.. Qualcuno ha già affrontato un problema del genere ? 

```

$ uname -a

Linux ego 2.6.31-gentoo-r6 #7 SMP Wed Dec 30 17:54:34 CET 2009 x86_64 Intel(R) Core(TM)2 Duo CPU T5850 @ 2.16GHz GenuineIntel GNU/Linux

```

Se vi servono altre informazioni non ci sono problemi.

Grazie in anticipo.Last edited by krono85 on Mon Feb 01, 2010 10:55 am; edited 1 time in total

----------

## djinnZ

Se non erro e molto a naso dovresti intervenire sulle cflags o sull'ebuild perchè le librerie non hanno supporto per il debugging simbolico su gentoo (o va abilitato esplicitamente con la use debug, ove supportato).

----------

## krono85

grazie per la risposta.

Provo subito e appena finisco di compilare verifico il funzionamento.

----------

## Luca89

La cflag per abilitare il debugging in c come credo in c++ é -g, tutti i pacchetti interessati devono essere compilati con questa flag. Portage per evitare che le informazioni di debug rallentino le applicazioni quando non devono essere usate (gli eseguibili compilati con -g sono più lenti di quelli normali) permette di separarle con la feature "splitdebug":

 *man make.conf wrote:*   

> 
> 
>   splitdebug
> 
>                      Prior to stripping ELF etdyn and etexec files, the debug‐
> ...

 

----------

## krono85

Ho compilato com la flag debug, ma non è cambiato nulla.

Quando creo un breackpoint su gdb e lancio il programma mi si pianta

con il solito messaggio..

-g lo passo come parametro di gcc per la compilazione.

----------

## krono85

Pare che sono riuscito ad autorisolvermi il problema..

Ho modificato i parametri che passavo a pkg-config per recuperare le informazioni

sulle librerie da includere, mi è bastato aggiungere --static. 

Ora pare funzionare tutto come deve, grazie per le delucidazioni.

----------

