Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
RE: [cdt-dev] Problem with executing dsf-gdb JUnit tests

Hi,

I am not sure if I am checking the correct JUnit tests for dsf-gdb.
I have  checked out test.dsf.gdb from HEAD of CVS root.
>From that I am trying to execute tests in package: org.eclipse.cdt.test.dsf.gdb.tests.tests_6_8
Total number of tests present are 138.
With above plugin, following are a few observations:

As explained in the below link, after executing the JUnitPluginTests  for test suite 6.8, .exe files are generated and placed in data/launch/bin folder.
These binaries seem to be generated for the .cc programs present in the data/launch/src folder (as given in theMakefile)
No other binaries are seen to be generated.
Thus it seems that binaries are not getting built for 6.8 tests.
Is there are any step which I might be missing?

As mentioned in below email, I debugged the code in class FinalLaunchSequence at the step that sends the command MIFileExecAndSymbol.
For the package org.eclipse.cdt.test.dsf.gdb.tests, the code returns valid path for execPath variable and thus the command MIFileExecAndSymbol gets queued successfully.
However for package org.eclipse.cdt.test.dsf.gdb.tests.tests_6_8
the code does not get value for execPath and thus the command: MIFileExecAndSymbols is not queued.

I had a doubt regarding the name of binary being specified. As per below mail,
"The binary is specified in the @BeforeClass of each test
by setting the ATTR_PROGRAM_NAME configuration attribute."

Above mentioned configuration attribute is set in class ExampleTest of the package org.eclipse.cdt.test.dsf.gdb.tests.
The @BeforeClass of tests in the 6.8 test package do not set the above mentioned attribute.

Is the above mentioned observation expected?

Thanks and Regards,
Sneha


-----Original Message-----
From: cdt-dev-bounces@xxxxxxxxxxx [mailto:cdt-dev-bounces@xxxxxxxxxxx] On Behalf Of Marc Khouzam
Sent: Friday, March 05, 2010 8:28 PM
To: CDT General developers list.
Subject: RE: [cdt-dev] Problem with executing dsf-gdb JUnit tests



> -----Original Message-----
> From: cdt-dev-bounces@xxxxxxxxxxx
> [mailto:cdt-dev-bounces@xxxxxxxxxxx] On Behalf Of sneha_apte
> Sent: March-05-10 1:47 AM
> To: CDT General developers list.
> Subject: RE: [cdt-dev] Problem with executing dsf-gdb JUnit tests
>
> Hi,
>
> Thanks for your inputs. Also, is there a way in Eclipse to
> find debug information about the programs?
>
>
>
> In continuation with below mail, I would like to provide a
> snapshot of the errors which I can observe on Eclipse console
> once I enable tracing while debug:
>
>
>
> ====================================================================
>
> Launching test application: data/launch/bin/MultiThread.exe
>
> ====================================================================
>
> 266,627 [MI]  1-inferior-tty-set /dev/pts/17
>
> 266,731 [MI]  1^done
>
> 266,743 [MI]  (gdb)
>
> 266,787 [MI]  2source .gdbinit
>
> 266,806 [MI]  &"source .gdbinit\n"
>
> 266,806 [MI]  &".gdbinit: No such file or directory.\n"
>
> 266,806 [MI]  2^error,msg=".gdbinit: No such file or directory."
>
> 266,806 [MI]  (gdb)
>
> 266,814 [MI]  3-gdb-set auto-solib-add on
>
> 266,832 [MI]  3^done
>
> 266,832 [MI]  (gdb)
>
> 266,837 [MI]  4-environment-directory
>
> 266,838 [MI]  4^done,source-path="$cdir:$cwd"
>
> 266,841 [MI]  (gdb)
>
> 266,841 [MI]  5-break-insert -t main
>
> 266,842 [MI]  &"No symbol table is loaded.  Use the \"file\"
> command.\n"
>
> 266,843 [MI]  5^error,msg="No symbol table is loaded.  Use
> the \"file\" command."
>
> 266,855 [MI]  (gdb)
>
>
>
> !ENTRY org.eclipse.cdt.dsf 4 10005 2010-03-05 11:54:26.856
>
> !MESSAGE Request for monitor: 'RequestMonitor
> (org.eclipse.cdt.dsf.concurrent.RequestMonitorWithProgress@6bf
> 15d27): Status ERROR: org.eclipse.cdt.dsf.gdb code=10004
> Failed to execute MI command:
>
> -break-insert -t main
>
> Error message from debugger back end:
>
> No symbol table is loaded.  Use the "file" command.
> java.lang.Exception: No symbol table is loaded.  Use the
> "file" command.' resulted in an error.
>
> !SUBENTRY 1 org.eclipse.cdt.dsf.gdb 4 10004 2010-03-05 11:54:26.857
>
> !MESSAGE Failed to execute MI command:
>
> -break-insert -t main
>
> Error message from debugger back end:
>
> No symbol table is loaded.  Use the "file" command.
>
> !STACK 0
>
> java.lang.Exception: No symbol table is loaded.  Use the
> "file" command.
>
>                 at
> org.eclipse.cdt.dsf.mi.service.command.AbstractMIControl$RxThr
> ead.processMIOutput(AbstractMIControl.java:806)
>
>                 at
> org.eclipse.cdt.dsf.mi.service.command.AbstractMIControl$RxThr
> ead.run(AbstractMIControl.java:645)
>
>
>
> This error is repeated for most of the tests.

Are you sure the binaries are built?  Do you have anything
under the test plugin data/launch/bin?

The command to set the binary is not being sent to GDB.
I'm not sure that is.  Did you modify the tests?
The binary is specified in the @BeforeClass of each test
by setting the ATTR_PROGRAM_NAME configuration attribute.

You can debug this by looking at FinalLaunchSequence at the
step that sends the command MIFileExecAndSympbol

> As seen in the above trace, error related to .gdbinit file are logged.
>
> I have kept the .gdbinit file in my home directory.

You don't need a .gdbinit.  The error can be ignored.

If you do have a .gdbinit file, I believe it will need to go into the
workspace where the tests are run.  You can look at your launch, in the main
tab to know the workspace.  It is probably junit-workspace.
But again, you don't need one, and probably should not have one.

> I have also updated the PATH variable with the path of gdb binary.

That's good.  But from the traces, GDB is being started ok.

> I am currently trying to execute Test suite for 6.8.
>
>
>
> I have executed all steps as mentioned in the following link
> before executing JUnit tests.
>
> http://wiki.eclipse.org/CDT/cdt-debug-dsf-gdb#Launching_the_tests
>
>
>
> I am not sure if I have missed any steps.
>
> If anybody has any suggestions/comments, kindly let me know.
>
>
>
> Thanks and regards,
>
> Sneha
>
>
>
> From: cdt-dev-bounces@xxxxxxxxxxx
> [mailto:cdt-dev-bounces@xxxxxxxxxxx] On Behalf Of John Cortell
> Sent: Thursday, March 04, 2010 6:13 PM
> To: CDT General developers list.; cdt-dev@xxxxxxxxxxx
> Subject: Re: [cdt-dev] Problem with executing dsf-gdb JUnit tests
>
>
>
> It sounds like the test programs lack debug information.
> Those programs are built by the Eclipse dsf-gdb test
> plugin--it runs a script that invokes makefiles.
>
> The first thing I would do is use the readelf  (specify -w)
> to see if the binaries have debug info. If they don't then
> examine how the programs are being built; something
> unexpected might be going on there. If they do have debug
> information, then something else is going wrong.
>
> John
>
>
> At 05:33 AM 3/4/2010, sneha_apte wrote:
>
>
>
> Content-Language: en-US
> Content-Type: multipart/alternative;
>
> boundary="_000_14B8F27D7CE40C4C9E481B2B845C2E0D037312CFC0EXCHA
> NGEpersi_"
>
> Hi all,
>
> I am trying to execute JUnit tests for dsf-gdb from Eclipse.
> However I am getting following type of error for most of the tests:
>
> !SUBENTRY 1 org.eclipse.cdt.dsf.gdb 4 10004 2010-03-04
> 15:46:17.832 !MESSAGE Failed to execute MI command:
> -break-insert -t main
> Error message from debugger back end:
> No symbol table is loaded.  Use the "file" command.
> !STACK 0
> java.lang.Exception: No symbol table is loaded.  Use the
> "file" command.
>     at
> org.eclipse.cdt.dsf.mi.service.command.AbstractMIControl$RxThr
> ead.processMIOutput(AbstractMIControl.java:806)
>     at
> org.eclipse.cdt.dsf.mi.service.command.AbstractMIControl$RxThr
> ead.run(AbstractMIControl.java:645)
>
> I am performing following steps:
> 1. Checked out cdt-all, dsf, dsf-gdb plugins from CVS HEAD.
> 2. Pre-requisite of the tests is that the gdb binary should
> have given names:
>
> *	gdb.6.6
> *	gdb.6.7
> *	gdb.6.8
> *	gdb.7.0
>
> 3. As per post from following link, test cases for gdb 6.8
> are all passing.
> http://old.nabble.com/DSF-GDB-JUnit-tests-td27533144.html
> 4. On my machine, the gdb binary is named "gdb" only. It is
> of 6.8 version.
> 5. Thus I added a link gdb.6.8 pointing to this gdb.
> 6. I have also included the path to this symbolic link in the
> PATH variable.
> Some more information:
> 7. I am using eclipse Helios.
> 8. Number of tests to be executed is displayed as 136.
>
> If anybody can provide me some pointers / guidance it would
> be of great help.
>
> Thanks and Regards,
> Sneha
>
>
> DISCLAIMER ========== This e-mail may contain privileged and
> confidential information which is the property of Persistent
> Systems Ltd. It is intended only for the use of the
> individual or entity to which it is addressed. If you are not
> the intended recipient, you are not authorized to read,
> retain, copy, print, distribute or use this message. If you
> have received this communication in error, please notify the
> sender and delete all copies of this message. Persistent
> Systems Ltd. does not accept any liability for virus infected mails.
> _______________________________________________
> cdt-dev mailing list
> cdt-dev@xxxxxxxxxxx
> https://dev.eclipse.org/mailman/listinfo/cdt-dev
>
> DISCLAIMER ========== This e-mail may contain privileged and
> confidential information which is the property of Persistent
> Systems Ltd. It is intended only for the use of the
> individual or entity to which it is addressed. If you are not
> the intended recipient, you are not authorized to read,
> retain, copy, print, distribute or use this message. If you
> have received this communication in error, please notify the
> sender and delete all copies of this message. Persistent
> Systems Ltd. does not accept any liability for virus infected mails.
>
> _______________________________________________
cdt-dev mailing list
cdt-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/cdt-dev

DISCLAIMER
==========
This e-mail may contain privileged and confidential information which is the property of Persistent Systems Ltd. It is intended only for the use of the individual or entity to which it is addressed. If you are not the intended recipient, you are not authorized to read, retain, copy, print, distribute or use this message. If you have received this communication in error, please notify the sender and delete all copies of this message. Persistent Systems Ltd. does not accept any liability for virus infected mails.


Back to the top