cgdb-devel Mailing List for the curses debugger (Page 16)
Brought to you by:
bobbybrasko,
crouchingturbo
You can subscribe to this list here.
2003 |
Jan
|
Feb
(19) |
Mar
(15) |
Apr
(6) |
May
|
Jun
(13) |
Jul
(8) |
Aug
(15) |
Sep
(43) |
Oct
(14) |
Nov
(9) |
Dec
(3) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2004 |
Jan
(4) |
Feb
(9) |
Mar
(15) |
Apr
(5) |
May
(1) |
Jun
|
Jul
(12) |
Aug
|
Sep
|
Oct
|
Nov
(3) |
Dec
|
2005 |
Jan
(1) |
Feb
|
Mar
(1) |
Apr
(12) |
May
(7) |
Jun
(7) |
Jul
(21) |
Aug
(7) |
Sep
|
Oct
|
Nov
(1) |
Dec
|
2006 |
Jan
(3) |
Feb
(2) |
Mar
(5) |
Apr
(2) |
May
(5) |
Jun
(6) |
Jul
|
Aug
(7) |
Sep
|
Oct
(13) |
Nov
|
Dec
(7) |
2007 |
Jan
(3) |
Feb
(16) |
Mar
(6) |
Apr
(8) |
May
(7) |
Jun
(19) |
Jul
(14) |
Aug
(23) |
Sep
|
Oct
|
Nov
|
Dec
|
2008 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(14) |
Jun
(3) |
Jul
|
Aug
|
Sep
(6) |
Oct
(3) |
Nov
|
Dec
(1) |
2009 |
Jan
(4) |
Feb
(2) |
Mar
|
Apr
|
May
|
Jun
(3) |
Jul
(11) |
Aug
|
Sep
(3) |
Oct
|
Nov
|
Dec
(1) |
2010 |
Jan
(3) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(2) |
Nov
(8) |
Dec
(1) |
2011 |
Jan
|
Feb
(4) |
Mar
(1) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(1) |
Oct
|
Nov
|
Dec
|
2012 |
Jan
|
Feb
|
Mar
|
Apr
(1) |
May
|
Jun
|
Jul
(1) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Peter K. <pe...@ko...> - 2003-07-30 11:43:27
|
I'm not sure that its all entirely necessary, although I definitely like the idea of the multiple source view windows. So, first of all, I think that we should have Source and Mixed Assembly. I personally think that's the most useful view. When you're in Mixed, next implicitly means 'nexti' (next instruction). I'll have to think about the multiple source views problem. I'm thinking some sort of event system, however I'm not sure that would be the best thing to bundle into libtgdb which we eventually hope to be used by other parties. The idea would be that tgdb would output different types of events like 'view source' events or 'terminal output'. cgdb would be responsible for catching these events, and distributing them to the right places. Seems a tad overly complicated, but it might be a step in the right direction. Another idea would be to register a series of callback functions. So when you create a source view, you register with tgdb and get called whenever there is a source view update. The problem with this, (and with the event based approach) is how do you handle source file changes. Do you wipe out all the windows? Do you refresh all the windows with the new source file? - Peter On Tue, Jul 29, 2003 at 09:55:42PM -0400, Bob Rossi wrote: > Hi, >=20 > I have been thinking about the best way to add assembly to cgdb. > As of now, cgdb uses the line and file as the unique mapping to what > should be display to the user. This will probably change. I am not sure > how it should be implemented, but I think I have a clear idea of what it > should do. >=20 > IMO, there should be a colon command, that lets the user change the way > the current window displays to the user their program. Here are some: > 1. Allow the window to show only the source code ( the default )=20 > 2. Allow the window to show only assembly > 3. Allow the window to show mixed. >=20 > This should be modular so that the user can open a window, make it follow > the source, open another window, make it follow assembly, and open > another window and make it be mixed. All of these things should work at > the same time. >=20 > What does everyone think? It seems like it will be a pretty hard task. >=20 > Bob Rossi --=20 Peter D. Kovacs <pe...@ko...> |
From: Bob R. <bo...@br...> - 2003-07-30 01:55:50
|
Hi, I have been thinking about the best way to add assembly to cgdb. As of now, cgdb uses the line and file as the unique mapping to what should be display to the user. This will probably change. I am not sure how it should be implemented, but I think I have a clear idea of what it should do. IMO, there should be a colon command, that lets the user change the way the current window displays to the user their program. Here are some: 1. Allow the window to show only the source code ( the default )=20 2. Allow the window to show only assembly 3. Allow the window to show mixed. This should be modular so that the user can open a window, make it follow the source, open another window, make it follow assembly, and open another window and make it be mixed. All of these things should work at the same time. What does everyone think? It seems like it will be a pretty hard task. Bob Rossi |
From: Bob R. <bo...@br...> - 2003-07-19 13:55:06
|
Hi All, In case you were wondering why no one was downloading cgdb, its because sourceforge is broken :). I mean really, do you think its possible for people not to download cgdb? Check it out. http://sourceforge.net/docman/display_doc.php?docid=3D2352&group_id=3D1 (2003-07-15 08:25:23) CVS and download statistics (along with statist= ics=20 that are generated based on the CVS and download statistics) are curren= tly=20 inaccurate or missing. The CVS statistics are currently waiting on the= =20 download statistics issue resolution. The necessary code changes are=20 currently being tested regarding the download statistics issue. Upon=20 finalization of the code changes, the statistics will be rerun to gener= ate=20 proper statistics for all projects that are affected (including aggrega= te=20 statistics such as project rank). We anticipate this process to begin t= his=20 week (the week of July 14th). Following resolution of the download=20 statistics issue, the CVS statistics issue will be addressed. The=20 statistics issues will not affect the project purge process and will no= t=20 erroneously remove projects that are active. (2003-06-13 08:19:02) An update regarding work to resolve the known= =20 download statistics inaccuracies has been posted to Support Request 745= 577. (2002-12-07 08:00:07) The SourceForge.net team is currently working t= o=20 resolve site statistics issues which have been documented for the month= of=20 October and the month of November. It is not necessary to submit new=20 requests regarding these issues; additional information will be posted = here=20 as these issues are resolved. Anyways, thought you all might be interested. Bob Rossi |
From: Bob R. <bo...@br...> - 2003-07-17 11:44:34
|
Ok, fixed. Just so everyone knows, All of these bugs used to work. As soon as we switched away from Muellers hand written tokenizer, these bugs have appeared. Anyways, eventually we will get the clexer.l file correct. Bob Rossi On Wed, Jul 16, 2003 at 09:41:01PM -0400, Peter Kovacs wrote: > Its not recognizing identifiers correctly that have numbers in them. > (The number is always returned as a literal, instead of part of the > identifier.) >=20 > I've attached an example. >=20 > - Peter >=20 > --=20 > Peter D. Kovacs <pe...@ko...> |
From: Peter K. <pe...@ko...> - 2003-07-17 01:41:06
|
Its not recognizing identifiers correctly that have numbers in them. (The number is always returned as a literal, instead of part of the identifier.) I've attached an example. - Peter -- Peter D. Kovacs <pe...@ko...> |
From: Peter K. <pe...@ko...> - 2003-07-01 11:40:12
|
That does sound like a reasonable thing to do. However, where would it print this information out? We should have some area of the screen reserved for "messages". Perhaps the dividing bar would be the best place. - Peter On Mon, Jun 30, 2003 at 10:53:33PM -0400, Bob Rossi wrote: > Hey, >=20 > I was thinking about the command parser. One other feature besides=20 > :syntax on > :syntax off=20 >=20 > that it could support is=20 >=20 > :set ft > :set tabspace >=20 > The reason behind this is, thats what the user normally does to figure > out what the value is currently set too. This way, we can display to > them the current value. At least thats the way its done in vim. >=20 > We should also clean up unacceptable values. Have each command return a > 1 line error in the status bar when it is invalid. >=20 > Bob Rossi --=20 Peter D. Kovacs <pe...@ko...> |
From: Bob R. <bo...@br...> - 2003-07-01 02:55:42
|
Hey, I was thinking about the command parser. One other feature besides=20 :syntax on :syntax off=20 that it could support is=20 :set ft :set tabspace The reason behind this is, thats what the user normally does to figure out what the value is currently set too. This way, we can display to them the current value. At least thats the way its done in vim. We should also clean up unacceptable values. Have each command return a 1 line error in the status bar when it is invalid. Bob Rossi |
From: Bob R. <bo...@br...> - 2003-06-28 15:29:29
|
Hey everyone, I just discovered the way to retrieve assembly code on a per line basis. That means, after I implement this feature in tgdb, cgdb will be able to inline the assembly code for each line of source code in a file! That will be a pretty nice feature. Although, I don't know when the cgdb end of it will get done, since there seems to be less development on that side of the project lately. ( At least for me ). Bob Rossi |
From: Bob R. <bob...@co...> - 2003-06-26 15:51:03
|
test |
From: Mike M. <mmu...@cs...> - 2003-06-26 13:56:09
|
This is a test, please ignore. |
From: Peter K. <pe...@ko...> - 2003-06-21 16:12:38
|
Hey guys -- I cleaned up some of the config file parsing. Line counting is handled correctly now, and I added support for line continuation characters (i.e. \ at the end of a line). And the parser no longer bombs out on empty lines in the config file. Yay. I've attached the patch for your perusal, although I've already committed it. - Peter -- Peter D. Kovacs <pe...@ko...> |
From: Bob R. <bob...@co...> - 2003-06-19 19:08:54
|
Hi all, I am getting ready to release cgdb 0.3.2 :). It has many bug fixes and some really helpful new functionality. Please download the cvs version if you want to help with testing. Basically, no new functionality will be added until the release. If it appears to be stable, then we will release early next week. Thanks, Bob Rossi |
From: Mike M. <mmu...@cs...> - 2003-06-15 01:25:50
|
Is the CVS browser on SourceForge out of date? I just looked for my change, and I don't see it... Mike |
From: Mike M. <mmu...@cs...> - 2003-06-15 01:23:31
|
Guys, The tab stop behavior is fixed with left/right scrolling. Kudos on the config stuff Peter! I used :set ts to try out my changes and it works beautifully. Enjoy, Mike |
From: Bob R. <bob...@co...> - 2003-06-14 18:22:17
|
Hey Peter, I implemented the tabstop feature ( changed tabspace to tabstop ). I also changed the commands call to printf to if_print_message when a bad line is parsed. This shows the error in the gdb window. I noticed the line number was not right when printing an error. I couldn't figure out why. Do you know? Its easy to reproduce, :set ic b main :set ts=3D4 Try that. Thanks, Bob Rossi On Sat, Jun 14, 2003 at 10:45:34AM -0400, Peter Kovacs wrote: > Hey guys. I finally committed my stuff! >=20 > set focus=3D is implemented. you can do "set focus=3Dgdb|cgdb|tty" and it > works as necessary. Right now it doesn;t toggle the tty panel. (Do we > even have that anymore?) >=20 > set tabspace stubbed out. I'm not sure how this should be implemented, > so I just left it empty right now. If you look at command_set_tabspace > in commands.c you can see where it needs to be changed. Perhaps you can > point out where tab-spaces are calculated? >=20 > config file parsing (~/.cgdb/cgdbrc) implemented. WOOT! just create > that file, and it runs all the commands in it before entering the > main_loop(). >=20 > - Peter >=20 > --=20 > Peter D. Kovacs <pe...@ko...> |
From: Bob R. <bob...@co...> - 2003-06-14 17:05:39
|
Geez, This patch is great! I can finally stop typing :set ic. ( Stupid Ada ) Hey, do you think there is anyway we will be able to automate passing data to the windows. :send xxx=3Ddata? This would help automate setting breakpoints and stuff. :send gdb=3D'b main' ? :send gdb=3D'run' I don't know what would be best here. The other thing I tried was :set foucs=3Dgdb b main run What happens to data in the configure file thats not prefixed with :set? I obviously don't know what would be best here. Down the road we=20 probably want to have functions and stuff. This would be helpful for macro's ( printing variables, ... ). For now I was just wondering=20 what would be the best way to automate commands to the windows. By the way, if we could automate commands to the windows, we could start a testsuite! This would be very helpful. Thanks for the great patch! Bob Rossi On Sat, Jun 14, 2003 at 10:45:34AM -0400, Peter Kovacs wrote: > Hey guys. I finally committed my stuff! >=20 > set focus=3D is implemented. you can do "set focus=3Dgdb|cgdb|tty" and it > works as necessary. Right now it doesn;t toggle the tty panel. (Do we > even have that anymore?) >=20 > set tabspace stubbed out. I'm not sure how this should be implemented, > so I just left it empty right now. If you look at command_set_tabspace > in commands.c you can see where it needs to be changed. Perhaps you can > point out where tab-spaces are calculated? >=20 > config file parsing (~/.cgdb/cgdbrc) implemented. WOOT! just create > that file, and it runs all the commands in it before entering the > main_loop(). >=20 > - Peter >=20 > --=20 > Peter D. Kovacs <pe...@ko...> |
From: Peter K. <pe...@ko...> - 2003-06-14 15:28:31
|
Just for reference, and since its pretty small, the patch that I just committed is below. - Peter Index: cgdb.c =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D RCS file: /cvsroot/cgdb/cgdb/cgdb/src/cgdb.c,v retrieving revision 1.4 diff -w -u -r1.4 cgdb.c --- cgdb.c 5 Jun 2003 01:29:36 -0000 1.4 +++ cgdb.c 14 Jun 2003 14:38:26 -0000 @@ -70,6 +70,7 @@ #include "ibuf.h" #include "input.h" #include "fs_util.h" +#include "commands.h" =20 /* --------------- */ /* Local Variables */ @@ -647,6 +648,17 @@ /* Initialize the pipe that is used for resize */ if( init_resize_pipe() =3D=3D -1 ) err_quit("%s: init_resize_pipe error\n", my_name);=20 + + { + char config_file[ PATH_MAX ]; + FILE *config; + fs_util_get_path( cgdb_home_dir, "cgdbrc", config_file ); + config =3D fopen( config_file, "r" ); + if( config ) {=20 + command_parse_file( config ); + fclose( config ); + } + } =20 /* Enter main loop */ main_loop(); Index: commands.c =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D RCS file: /cvsroot/cgdb/cgdb/cgdb/src/commands.c,v retrieving revision 1.3 diff -w -u -r1.3 commands.c --- commands.c 13 Jun 2003 01:06:28 -0000 1.3 +++ commands.c 14 Jun 2003 14:38:26 -0000 @@ -28,16 +28,31 @@ extern int shortcut_option ; extern int line_coverage_option; =20 +enum ConfigType +{ + CONFIG_TYPE_BOOL, /* set ic / set noic */ + CONFIG_TYPE_INT, /* set tabspace=3D8 */ + CONFIG_TYPE_STRING, + CONFIG_TYPE_FUNC_VOID, + CONFIG_TYPE_FUNC_INT, + CONFIG_TYPE_FUNC_STRING, +}; =20 -static struct variables +static int command_set_focus( const char *value ); +static int command_set_tabspace( int tab ); + +static struct ConfigVariable { const char * name, *s_name; - int * variable; + enum ConfigType type; + void *data; } VARIABLES[] =3D { // keep this stuff sorted! !sort - /* ignorecase */ { "ignorecase", "ic", ®ex_icase }, - /* line coverage */ { "line_coverage", "lc", &line_coverage_option }, - /* shortcut */ { "shortcut", "sc", &shortcut_option }, + /* focus */ { "focus", "fo", CONFIG_TYPE_FUNC_STRING, command_set= _focus }, + /* ignorecase */ { "ignorecase", "ic", CONFIG_TYPE_BOOL, ®ex_icase= }, + /* line_coverage */ { "line_coverage", "lc", CONFIG_TYPE_BOOL, &line_c= overage_option }, + /* shortcut */ { "shortcut", "sc", CONFIG_TYPE_BOOL, &shortcut_opti= on }, + /* tabspace */ { "tabspace", "ts", CONFIG_TYPE_FUNC_INT, command_= set_tabspace }, }; =20 static int command_focus_cgdb( void ); @@ -95,20 +110,41 @@ return NULL; } =20 -int * get_variable( const char *variable )=20 +struct ConfigVariable* get_variable( const char *variable )=20 { /* FIXME: replace with binary search */ int i; for ( i =3D 0; i < (sizeof( VARIABLES )/sizeof( VARIABLES[0])); ++i ) { if ( strcmp( variable, VARIABLES[i].name ) =3D=3D 0 || strcmp( variable, VARIABLES[i].s_name ) =3D=3D 0 ) { - return VARIABLES[i].variable; + return &VARIABLES[i]; } } =20 return NULL; } =20 +int command_set_focus( const char *value ) +{ + if( strcasecmp( value, "cgdb" ) =3D=3D 0 ) { + command_focus_cgdb(); + } else if (strcasecmp( value, "gdb" ) =3D=3D 0 ) { + command_focus_gdb(); + } else if( strcasecmp( value, "tty" ) =3D=3D 0 ) { + command_focus_tty(); + } else { + return 1; + } + + return 0; +} + +int command_set_tabspace( int value ) +{ + fprintf( stderr, "Unimplemented.\n" ); + return 1; +} + int command_focus_cgdb( void ) { if_set_focus( CGDB ); @@ -205,25 +241,112 @@ =20 int command_parse_set( void ) { + /* commands could look like the following: + * set ignorecase + * set noignorecase + * set focus=3Dgdb + * set tabspace=3D8 + */ + int rv =3D 1; - int val =3D 1; + int boolean =3D 1; const char * value =3D NULL; =20 switch ( (rv =3D yylex()) ) { case IDENTIFIER: { const char *token =3D get_token(); int length =3D strlen( token ); - int *variable =3D NULL; + struct ConfigVariable *variable =3D NULL; + if ( length > 2 && token[0] =3D=3D 'n' && token[1] =3D=3D 'o' ) { value =3D token + 2; - val =3D 0; + boolean =3D 0; } else { value =3D token; } =20 if ( (variable =3D get_variable( value )) !=3D NULL ) { rv =3D 0; - *variable =3D val; + if( boolean =3D=3D 0 && + variable->type !=3D CONFIG_TYPE_BOOL ) { + /* this is an error, you cant' do: + * set notabspace=20 + */ + rv =3D 1; + } + + switch( variable->type ) { + case CONFIG_TYPE_BOOL: + *(int*)(variable->data) =3D boolean; + break; + case CONFIG_TYPE_INT: { + if( yylex() =3D=3D '=3D' && + yylex() =3D=3D NUMBER ) { + int data =3D strtol( get_token(), NULL, 10 ); + *(int*)(variable->data) =3D data; + } else { + rv =3D 1; + } + } break; + case CONFIG_TYPE_STRING: { + if( yylex() =3D=3D '=3D' && + (rv =3D yylex(), rv =3D=3D STRING || rv =3D=3D IDENTIFI= ER) ) { + /* BAM! comma operator */ + char * data =3D (char*)get_token(); + if( rv =3D=3D STRING ) { + /* get rid of quotes */ + data =3D data + 1; + data[ strlen( data ) - 1 ] =3D '\0'; + }=20 + if( variable->data )=20 + { free( variable->data ); } + (char *)variable->data =3D strdup( data ); + } else { + rv =3D 1; + } + } break; + case CONFIG_TYPE_FUNC_VOID: { + int(*functor)( void ) =3D (int(*)(void))variable->data; + if( functor ) + { rv =3D functor(); } + else=20 + { rv =3D 1; } + } break; + case CONFIG_TYPE_FUNC_INT: { + int (*functor)( int ) =3D (int(*)(int))variable->data; + if( yylex() =3D=3D '=3D' && + yylex() =3D=3D NUMBER ) { + int data =3D strtol( get_token(), NULL, 10 ); + if( functor ) + { rv =3D functor( data ); } + else + { rv =3D 1; } + } else { + rv =3D 1; + } + } break; + case CONFIG_TYPE_FUNC_STRING: { + int (*functor)( const char* ) =3D (int(*)(const char*))var= iable->data; + if( yylex() =3D=3D '=3D' && + (rv =3D yylex(), rv =3D=3D STRING || rv =3D=3D IDENTIFI= ER) ) { + /* BAM! comma operator */ + char * data =3D (char*)get_token(); + if( rv =3D=3D STRING ) { + /* get rid of quotes */ + data =3D data + 1; + data[ strlen( data ) - 1 ] =3D '\0'; + }=20 + if( functor ) + { rv =3D functor(data); } + else + { rv =3D 1; } + } else=20 + { rv =3D 1; } + } break; + default:=20 + rv =3D 1; + break; + } } } break; default: @@ -289,3 +412,19 @@ return rv; } =20 +int command_parse_file( FILE *fp ) +{ + char buffer[4096]; + extern int yylinenumber; + + while( fgets( buffer, sizeof(buffer), fp ) ) + { + if( command_parse_string( buffer ) ) + { + fprintf( stderr, "Error parsing line %d: %s\n", yylinenumber, b= uffer ); + return 1; + } + } + + return 0; +} --=20 Peter D. Kovacs <pe...@ko...> |
From: Peter K. <pe...@ko...> - 2003-06-14 14:45:45
|
Hey guys. I finally committed my stuff! set focus=3D is implemented. you can do "set focus=3Dgdb|cgdb|tty" and it works as necessary. Right now it doesn;t toggle the tty panel. (Do we even have that anymore?) set tabspace stubbed out. I'm not sure how this should be implemented, so I just left it empty right now. If you look at command_set_tabspace in commands.c you can see where it needs to be changed. Perhaps you can point out where tab-spaces are calculated? config file parsing (~/.cgdb/cgdbrc) implemented. WOOT! just create that file, and it runs all the commands in it before entering the main_loop(). - Peter --=20 Peter D. Kovacs <pe...@ko...> |
From: Bob R. <bob...@co...> - 2003-06-10 01:36:24
|
Hi, I am deciding on how to support syntax highlighting in cgdb. The first thing necessary is to tokenize the file. I have come up with 2 possible solutions. 1. Use flex.=20 This would result in 1 flex input file per language supported. It would be the fastest method. However, changing the flex input file would result in recompiling=20 the flex driver and linking. This is a pain. Also, adding new syntax files would not be plug/play. code would have to be changed, configure scripts regenerated, ... It would be hard to configure the tokenizer, since the format is done at compile time. 2. Use regex. This would result in 1 input file used per language. This file would be a format of our choice.=20 This method will be less efficient due to regcomp/regexec. In order to get a match, a regex has to be applied to a buffer. So basically, cgdb would have to apply each regex against the file. Remembering the positions. There could be up to 20 regex's! This would be a good approach because we could just drop new text files into a plugin directory and then cgdb would be able to highlight the language. Since, regex is done at runtime. So, the dilemma is, how can cgdb gain performance ( flex ) and plugin support ( regex )? Which is better? Can anyone think of any improvements? Thanks, Bob Rossi |
From: Bob R. <bob...@co...> - 2003-06-01 04:28:57
|
Hi, I checked in a new version of tgdb. Its goal is to separate the annotate 2 code from the main loop code in tgdb-base. This way, libtgdb can add different clients to gdb ( annotate 1, annotate 2, gdbmi ... ) without having to do anything but implement an interface.=20 It also separated the readline code from the clients. This is because tgdb-base now handles all the readline stuff. The clients only get notified when a command is given or when data is recieved from gdb. Anyways, Please try out the latest cvs tree. I tested it well, so it shouldn't give any problems.=20 Thanks, Bob Rossi |
From: Bob R. <bob...@co...> - 2003-04-29 15:59:32
|
Hi Kirill, I just repeated the problem you are seeing. It appears that cgdb needs readline-4.2 or greater to compile. You can download readline from ftp.gnu.org/gnu/readline. Then you can configure cgdb to use readline. If you have trouble with this, please let us know. Thanks, Bob Rossi On Tue, Apr 29, 2003 at 08:29:47AM -0400, Peter Kovacs wrote: > Does BSD even have the same readline that GNU does? They might have > their own in which case it might be prudent to install it somewhere we > can get it, eh? >=20 > - Peter >=20 > On Tue, Apr 29, 2003 at 08:24:59AM -0400, Bob Rossi wrote: > > Hi Kirill, > >=20 > > The cgdb team doesn't have a box running FreeBSD. Also sourceforge's > > compile farm has not had its FreeBSD box up in over a month. > > http://sourceforge.net/docman/display_doc.php?docid=3D10472&group_id=3D1 > > This is why it is not compiling 'out of the box'. > >=20 > > The problem you are seeing is not known. It seems like a readline issue. > > The function rl_set_prompt is a readline function. > >=20 > > Do you know what version of readline you have installed? > > You need the headers from readline installed to get cgdb to compile, not > > just the library. Do you have those installed?=20 > > They are usually in /usr/include/readline. > > ( Although configure should have discovered if you didn't ). > >=20 > > Another simple thing you could do to show that it is a readline problem > > is comment out the line=20 > > driver_main.c:115 rl_set_prompt(prompt); > > and see were the next compile error comes from. > >=20 > > If it is a readline problem, in the end you should just download > > readline-4.3 and install that. Then configure cgdb to use that readline > > installation. > >=20 > > I would be very interested to hear about your progress. > >=20 > > Thanks, > > Bob Rossi > >=20 > > On Tue, Apr 29, 2003 at 08:59:11AM +0200, Kirill Ponomarew wrote: > > > Hi, > > >=20 > > > I'm porting cgdb to FreeBSD now and got the error during > > > compilation: > > >=20 > > > gcc -g -Wall -I../../../tgdb/tgdb-base/include > > > -I../../../tgdb/annotate-two/include > > > -I../../../tgdb/gdbmi/include -I../../../various/adt/include > > > -I../../../various/util/include > > > -I../../../various/rlctx/include -g -O2 -o tgdb_driver > > > -L../../../tgdb/tgdb-base/src -L../../../tgdb/annotate-two/src > > > -L../../../tgdb/gdbmi/src -L../../../various/adt/src > > > -L../../../various/util/src -L../../../various/rlctx/src > > > driver.o -ltgdb -lannotate_two -lgdbmi -lrlctx -ladt -lutil -lm > > > -lncurses -lreadline > > > ../../../various/rlctx/src/librlctx.a(rlctx_main.o): In > > > function `change_prompt': > > > /usr/home/krion/cgdb-0.3.1/various/rlctx/src/rlctx_main.c(.text+0x7d): > > > undefined reference to `rl_set_prompt' > > > *** Error code 1 > > >=20 > > > Is this problem already known? > > >=20 > > > Kirill > >=20 > >=20 >=20 >=20 >=20 > --=20 > Peter D. Kovacs <pe...@ko...> |
From: Peter K. <pe...@ko...> - 2003-04-29 12:29:54
|
Does BSD even have the same readline that GNU does? They might have their own in which case it might be prudent to install it somewhere we can get it, eh? - Peter On Tue, Apr 29, 2003 at 08:24:59AM -0400, Bob Rossi wrote: > Hi Kirill, >=20 > The cgdb team doesn't have a box running FreeBSD. Also sourceforge's > compile farm has not had its FreeBSD box up in over a month. > http://sourceforge.net/docman/display_doc.php?docid=3D10472&group_id=3D1 > This is why it is not compiling 'out of the box'. >=20 > The problem you are seeing is not known. It seems like a readline issue. > The function rl_set_prompt is a readline function. >=20 > Do you know what version of readline you have installed? > You need the headers from readline installed to get cgdb to compile, not > just the library. Do you have those installed?=20 > They are usually in /usr/include/readline. > ( Although configure should have discovered if you didn't ). >=20 > Another simple thing you could do to show that it is a readline problem > is comment out the line=20 > driver_main.c:115 rl_set_prompt(prompt); > and see were the next compile error comes from. >=20 > If it is a readline problem, in the end you should just download > readline-4.3 and install that. Then configure cgdb to use that readline > installation. >=20 > I would be very interested to hear about your progress. >=20 > Thanks, > Bob Rossi >=20 > On Tue, Apr 29, 2003 at 08:59:11AM +0200, Kirill Ponomarew wrote: > > Hi, > >=20 > > I'm porting cgdb to FreeBSD now and got the error during > > compilation: > >=20 > > gcc -g -Wall -I../../../tgdb/tgdb-base/include > > -I../../../tgdb/annotate-two/include > > -I../../../tgdb/gdbmi/include -I../../../various/adt/include > > -I../../../various/util/include > > -I../../../various/rlctx/include -g -O2 -o tgdb_driver > > -L../../../tgdb/tgdb-base/src -L../../../tgdb/annotate-two/src > > -L../../../tgdb/gdbmi/src -L../../../various/adt/src > > -L../../../various/util/src -L../../../various/rlctx/src > > driver.o -ltgdb -lannotate_two -lgdbmi -lrlctx -ladt -lutil -lm > > -lncurses -lreadline > > ../../../various/rlctx/src/librlctx.a(rlctx_main.o): In > > function `change_prompt': > > /usr/home/krion/cgdb-0.3.1/various/rlctx/src/rlctx_main.c(.text+0x7d): > > undefined reference to `rl_set_prompt' > > *** Error code 1 > >=20 > > Is this problem already known? > >=20 > > Kirill >=20 >=20 --=20 Peter D. Kovacs <pe...@ko...> |
From: Bob R. <bob...@co...> - 2003-04-29 12:25:22
|
Hi Kirill, The cgdb team doesn't have a box running FreeBSD. Also sourceforge's compile farm has not had its FreeBSD box up in over a month. http://sourceforge.net/docman/display_doc.php?docid=3D10472&group_id=3D1 This is why it is not compiling 'out of the box'. The problem you are seeing is not known. It seems like a readline issue. The function rl_set_prompt is a readline function. Do you know what version of readline you have installed? You need the headers from readline installed to get cgdb to compile, not just the library. Do you have those installed?=20 They are usually in /usr/include/readline. ( Although configure should have discovered if you didn't ). Another simple thing you could do to show that it is a readline problem is comment out the line=20 driver_main.c:115 rl_set_prompt(prompt); and see were the next compile error comes from. If it is a readline problem, in the end you should just download readline-4.3 and install that. Then configure cgdb to use that readline installation. I would be very interested to hear about your progress. Thanks, Bob Rossi On Tue, Apr 29, 2003 at 08:59:11AM +0200, Kirill Ponomarew wrote: > Hi, >=20 > I'm porting cgdb to FreeBSD now and got the error during > compilation: >=20 > gcc -g -Wall -I../../../tgdb/tgdb-base/include > -I../../../tgdb/annotate-two/include > -I../../../tgdb/gdbmi/include -I../../../various/adt/include > -I../../../various/util/include > -I../../../various/rlctx/include -g -O2 -o tgdb_driver > -L../../../tgdb/tgdb-base/src -L../../../tgdb/annotate-two/src > -L../../../tgdb/gdbmi/src -L../../../various/adt/src > -L../../../various/util/src -L../../../various/rlctx/src > driver.o -ltgdb -lannotate_two -lgdbmi -lrlctx -ladt -lutil -lm > -lncurses -lreadline > ../../../various/rlctx/src/librlctx.a(rlctx_main.o): In > function `change_prompt': > /usr/home/krion/cgdb-0.3.1/various/rlctx/src/rlctx_main.c(.text+0x7d): > undefined reference to `rl_set_prompt' > *** Error code 1 >=20 > Is this problem already known? >=20 > Kirill |
From: Armin D. <di...@no...> - 2003-04-10 06:36:15
|
last weekend i tried the cvs version under linux and it crashed after start. I will try it this weekend again (hope to have the time to try it under cygwin too) Bob Rossi wrote: > Hey, > > I am ready to release cgdb-0.3.0. > > I know there is still a ton of work to do, but there will always be. > I don't think there are any features in 0.2.3 that are not in 0.3.0. > > If we don't come up with any major bugs in a few days, we can release. > What do you guys think? > > Thanks, > Bobby |
From: Bob R. <bob...@co...> - 2003-04-10 01:43:40
|
Hey, I am ready to release cgdb-0.3.0. I know there is still a ton of work to do, but there will always be. I don't think there are any features in 0.2.3 that are not in 0.3.0. If we don't come up with any major bugs in a few days, we can release. What do you guys think? Thanks, Bobby |