Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [cdt-dev] Neon.2 does not start GDB 7.12 on macOS

> On 30 Jan 2017, at 22:40, Marc Khouzam <marc.khouzam@xxxxxxxxxxxx> wrote:
> 
> Can you try the build at:
> https://ci.eclipse.org/cdt/job/cdt-9.2/35/artifact/releng/org.eclipse.cdt.repo/target/org.eclipse.cdt.repo.zip


I did the following tests:

# macOS 10.12.2, GDB 7.10 (since 7.12 crashes on macOS)

- install eclipse-java-neon-2-macosx-cocoa-x86_64.tar.gz (installing cpp-neon-2 did not allow to update CDT)

- install from https://ci.eclipse.org/cdt/job/cdt-9.2/35/artifact/releng/org.eclipse.cdt.repo/target/org.eclipse.cdt.repo.zip
    C/C++ Development Tools	9.2.0.201701301723
    C/C++ GDB Hardware Debugging	9.2.0.201701301723

- install GNU ARM Eclipse plug-ins from a local folder (IGdbDebugConstants.GDB_PROCESS_CREATION_VALUE)

- start a QEMU debug session, halt in main()

Results (with GDB 7.10):

- the '${cross_prefix}gdb${cross_suffix} (???)' console (new one) reads:

```
GNU gdb (GNU Tools for ARM Embedded Processors) 7.10.1.20160923-cvs
Copyright (C) 2015 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 "--host=x86_64-apple-darwin10 --target=arm-none-eabi".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word".

Temporary breakpoint 1, main (argc=1, argv=0x20000234 <argv_buf>) at ../src/main.cpp:138
138	{

```

- the 'arm-none-eabi-gdb' console (old one) does not exist

- single step, breakpoint, suspend, terminate, restart ok

- click on the 'arm-none-eabi-gdb' process does nothing.


# Windows 8, x64, GDB 7.12 and GDB 7.10

- install eclipse-java-neon-2-win32-x86_64.zip

- install from https://ci.eclipse.org/cdt/job/cdt-9.2/35/artifact/releng/org.eclipse.cdt.repo/target/org.eclipse.cdt.repo.zip
    C/C++ Development Tools	9.2.0.201701301723
    C/C++ GDB Hardware Debugging	9.2.0.201701301723

- install GNU ARM Eclipse plug-ins from a local folder (IGdbDebugConstants.GDB_PROCESS_CREATION_VALUE)

- start a QEMU debug session, halt in main()


Results (with GDB 7.12):

- the '${cross_prefix}gdb${cross_suffix} (???)' console (new one) reads:

```
GNU gdb (GNU Tools for ARM Embedded Processors) 7.12.0.20161204-git
Copyright (C) 2016 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 "--host=i686-w64-mingw32 --target=arm-none-eabi".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word".

Temporary breakpoint 1, main (argc=1, argv=0x20000004 <argv>) at ../src/main.cpp:133
133	{
```

- the 'arm-none-eabi-gdb' console (old one) does not exist

- single step, breakpoint, suspend, restart ok.

- terminate triggers a windows error dialog box ('arm-none-eabi-gdb.exe has stopped working')

- click on the 'arm-none-eabi-gdb' process does nothing.


Results (with GDB 7.10):

- single step, breakpoint, suspend, terminate, restart ok.

- click on the 'arm-none-eabi-gdb' process does nothing.


# Ubuntu 14LTS, x64, GDB 7.12 and GDB 7.10

- install eclipse-java-neon-2-linux-gtk-x86_64.tar.gz

- install from https://ci.eclipse.org/cdt/job/cdt-9.2/35/artifact/releng/org.eclipse.cdt.repo/target/org.eclipse.cdt.repo.zip
    C/C++ Development Tools	9.2.0.201701301723
    C/C++ GDB Hardware Debugging	9.2.0.201701301723

- install GNU ARM Eclipse plug-ins from a local folder (IGdbDebugConstants.GDB_PROCESS_CREATION_VALUE)

- start a QEMU debug session, halt in main()


Results (with GDB 7.12):

- the '${cross_prefix}gdb${cross_suffix} (???)' console (new one) reads:

```
GNU gdb (GNU Tools for ARM Embedded Processors) 7.12.0.20161204-git
Copyright (C) 2016 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 "--host=x86_64-linux-gnu --target=arm-none-eabi".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word".

Temporary breakpoint 1, main (argc=1, argv=0x20000234 <argv_buf>) at ../src/main.cpp:138
```

- the 'arm-none-eabi-gdb' console (old one) does not exist

- single step, breakpoint, suspend, terminate, restart ok.

- click on the 'arm-none-eabi-gdb' process does nothing.


Results (with GDB 7.10);

- the '${cross_prefix}gdb${cross_suffix} (???)' console (new one) reads:

```
GNU gdb (GNU Tools for ARM Embedded Processors) 7.10.1.20160923-cvs
Copyright (C) 2015 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 "--host=i686-linux-gnu --target=arm-none-eabi".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word".

Temporary breakpoint 2, main (argc=1, argv=0x20000234 <argv_buf>) at ../src/main.cpp:138
138	{

```

- the 'arm-none-eabi-gdb' console (old one) does not exist

- single step, breakpoint, suspend, terminate, restart ok.

- click on the 'arm-none-eabi-gdb' process does nothing.



Problems:

- the new console title is not right, macro substitutions were not performed.

- on Windows, terminating the 7.12 session crashes GDB

- click on the 'arm-none-eabi-gdb' process does nothing, non-consistent with the other processes, which select the corresponding Tab console.


I also did another series of tests with the attribute IGdbDebugConstants.GDB_PROCESS_CREATION_VALUE **not set** for the GDB process.

Except that, on Windows, the GDB process no longer crashed on Terminate, on macOS the console output was split between two tabs:

- the 'arm-none-eabi-gdb' console (old one) reads:

```
GNU gdb (GNU Tools for ARM Embedded Processors) 7.10.1.20160923-cvs
Copyright (C) 2015 Free Software Foundation, Inc.

For bug reporting instructions, please see:
138	{

```

- the '${cross_prefix}gdb${cross_suffix} (???)' console (new one) reads:

```
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 "--host=x86_64-apple-darwin10 --target=arm-none-eabi".
Type "show configuration" for configuration details.<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word".

Temporary breakpoint 1, main (argc=1, argv=0x20000234 <argv_buf>) at ../src/main.cpp:138

```

As you said, not setting the attribute is probably not the right way to disable the new console.



Regards,

Liviu





Back to the top