Debugger in CLion 2018 is not working

Answered


 Hi,

I try to debug a remote application on Linux. Used 2 possible gdb settings:

1) Bundled GDB option results in "command timed out". Most forums answers claim 2016.2 version has fixed the problem, but hey I have 2018 version.. Other suggestions are more of a magical kind.

2) Using another gdb - I get "Unknown argument: -interpreter=mi2". Looked for any documentation on this and Clion, nothing so far..

A bit frustrating experience with the debugger...

Any help?

Linux - CentOS release 6.8, 2.6.32-696.10.1.el6.x86_64

Clion - 2018.2.5 after update (previously used 2018.2.1  with same results).

GDB1 - GNU gdbserver (GDB; JetBrains IDE bundle; build 123) 8.1
           This gdbserver was configured as "x86_64-pc-linux-gnu"

GDB2 - GNU gdbserver (GDB) CentOS (7.0.1-45.el5.centos)
             This gdbserver was configured as "x86_64-redhat-linux-gnu"

Remote debug settings in Clion:

 

Launched debugging session:

It may be worth mentioning, debugging worked sporadically with this configuration in the past (don't remember which Clion version).

Here is the idea.log:

2018-11-04 12:28:58,873 [2975154] INFO - brains.cidr.execution.debugger - Debugger started
2018-11-04 12:28:59,028 [2975309] DEBUG - brains.cidr.execution.debugger - </opt/clion-2018.2.5/bin/gdb/linux/bin/gdb -interpreter=mi2

2018-11-04 12:28:59,104 [2975385] DEBUG - brains.cidr.execution.debugger - <=thread-group-added,id="i1"
2018-11-04 12:28:59,105 [2975386] DEBUG - brains.cidr.execution.debugger - <~"GNU gdb (GDB; JetBrains IDE bundle; build 123) 8.1\n"
2018-11-04 12:28:59,105 [2975386] DEBUG - brains.cidr.execution.debugger - <~"Copyright (C) 2018 Free Software Foundation, Inc.\n"
2018-11-04 12:28:59,106 [2975387] DEBUG - brains.cidr.execution.debugger - <~"License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>\nThis is free software: you are free to change and redistribute it.\nThere is NO WARRANTY, to the extent permitted by law. Type \"show copying\"\nand \"show warranty\" for details.\n"
2018-11-04 12:28:59,106 [2975387] DEBUG - brains.cidr.execution.debugger - <~"This GDB was configured as \"x86_64-pc-linux-gnu\".\nType \"show configuration\" for configuration details."
2018-11-04 12:28:59,106 [2975387] DEBUG - brains.cidr.execution.debugger - <~"\nFor bug reporting instructions, please see:\n"
2018-11-04 12:28:59,106 [2975387] DEBUG - brains.cidr.execution.debugger - <~"<http://www.gnu.org/software/gdb/bugs/>.\n"
2018-11-04 12:28:59,107 [2975388] DEBUG - brains.cidr.execution.debugger - <~"Find the GDB manual and other documentation resources online at:\n<http://www.gnu.org/software/gdb/documentation/>.\n"
2018-11-04 12:28:59,107 [2975388] DEBUG - brains.cidr.execution.debugger - <~"For help, type \"help\".\n"
2018-11-04 12:28:59,107 [2975388] DEBUG - brains.cidr.execution.debugger - <~"Type \"apropos word\" to search for commands related to \"word\".\n"
2018-11-04 12:28:59,107 [2975388] DEBUG - brains.cidr.execution.debugger - <(gdb)
2018-11-04 12:28:59,107 [2975388] DEBUG - brains.cidr.execution.debugger - >-list-thread-groups
2018-11-04 12:28:59,107 [2975388] DEBUG - brains.cidr.execution.debugger - <^done,groups=[{id="i1",type="process"}]
2018-11-04 12:28:59,108 [2975389] DEBUG - brains.cidr.execution.debugger - <(gdb)
2018-11-04 12:28:59,108 [2975389] DEBUG - brains.cidr.execution.debugger - >inferior 1
2018-11-04 12:28:59,108 [2975389] DEBUG - brains.cidr.execution.debugger - <&"inferior 1\n"
2018-11-04 12:28:59,108 [2975389] DEBUG - brains.cidr.execution.debugger - <~"[Switching to inferior 1 [<null>] (<noexec>)]\n"
2018-11-04 12:28:59,108 [2975389] DEBUG - brains.cidr.execution.debugger - <^done
2018-11-04 12:28:59,108 [2975389] DEBUG - brains.cidr.execution.debugger - <(gdb)
2018-11-04 12:28:59,109 [2975390] DEBUG - brains.cidr.execution.debugger - >-gdb-set print elements 1000
2018-11-04 12:28:59,109 [2975390] DEBUG - brains.cidr.execution.debugger - <^done
2018-11-04 12:28:59,109 [2975390] DEBUG - brains.cidr.execution.debugger - <(gdb)
2018-11-04 12:28:59,109 [2975390] DEBUG - brains.cidr.execution.debugger - >-gdb-set print repeats 0
2018-11-04 12:28:59,109 [2975390] DEBUG - brains.cidr.execution.debugger - <^done
2018-11-04 12:28:59,109 [2975390] DEBUG - brains.cidr.execution.debugger - <(gdb)
2018-11-04 12:28:59,110 [2975391] DEBUG - brains.cidr.execution.debugger - >-gdb-set print object on
2018-11-04 12:28:59,110 [2975391] DEBUG - brains.cidr.execution.debugger - <^done
2018-11-04 12:28:59,110 [2975391] DEBUG - brains.cidr.execution.debugger - <(gdb)
2018-11-04 12:28:59,110 [2975391] DEBUG - brains.cidr.execution.debugger - >-gdb-set print asm-demangle on
2018-11-04 12:28:59,111 [2975392] DEBUG - brains.cidr.execution.debugger - <^done
2018-11-04 12:28:59,111 [2975392] DEBUG - brains.cidr.execution.debugger - <(gdb)
2018-11-04 12:28:59,111 [2975392] DEBUG - brains.cidr.execution.debugger - >-gdb-set python print-stack full
2018-11-04 12:28:59,111 [2975392] DEBUG - brains.cidr.execution.debugger - <^done
2018-11-04 12:28:59,111 [2975392] DEBUG - brains.cidr.execution.debugger - <(gdb)
2018-11-04 12:28:59,112 [2975393] DEBUG - brains.cidr.execution.debugger - >-gdb-set backtrace past-main on
2018-11-04 12:28:59,112 [2975393] DEBUG - brains.cidr.execution.debugger - <^done
2018-11-04 12:28:59,112 [2975393] DEBUG - brains.cidr.execution.debugger - <(gdb)
2018-11-04 12:28:59,113 [2975394] DEBUG - brains.cidr.execution.debugger - >-gdb-set mi-async on
2018-11-04 12:28:59,113 [2975394] DEBUG - brains.cidr.execution.debugger - <^done
2018-11-04 12:28:59,113 [2975394] DEBUG - brains.cidr.execution.debugger - <(gdb)
2018-11-04 12:28:59,113 [2975394] DEBUG - brains.cidr.execution.debugger - >info pretty-printer
2018-11-04 12:28:59,113 [2975394] DEBUG - brains.cidr.execution.debugger - <&"info pretty-printer\n"
2018-11-04 12:28:59,114 [2975395] DEBUG - brains.cidr.execution.debugger - <~"global pretty-printers:\n"
2018-11-04 12:28:59,114 [2975395] DEBUG - brains.cidr.execution.debugger - <~" builtin\n"
2018-11-04 12:28:59,114 [2975395] DEBUG - brains.cidr.execution.debugger - <~" mpx_bound128\n"
2018-11-04 12:28:59,114 [2975395] DEBUG - brains.cidr.execution.debugger - <^done
2018-11-04 12:28:59,114 [2975395] DEBUG - brains.cidr.execution.debugger - <(gdb)
2018-11-04 12:28:59,114 [2975395] DEBUG - brains.cidr.execution.debugger - >python import sys; sys.dont_write_bytecode = True; sys.path.insert(0, "/opt/clion-2018.2.5/bin/gdb/renderers"); from default.printers import register_default_printers; register_default_printers(None); from default.libstdcxx_printers import patch_libstdcxx_printers_module; patch_libstdcxx_printers_module(); from libstdcxx.v6.printers import register_libstdcxx_printers; register_libstdcxx_printers(None);
2018-11-04 12:28:59,116 [2975397] DEBUG - brains.cidr.execution.debugger - <&"python import sys; sys.dont_write_bytecode = True; sys.path.insert(0, \"/opt/clion-2018.2.5/bin/gdb/renderers\"); from default.printers import register_default_printers; register_default_printers(None); from default.libstdcxx_printers import patch_libstdcxx_printers_module; patch_libstdcxx_printers_module(); from libstdcxx.v6.printers import register_libstdcxx_printers; register_libstdcxx_printers(None); \n"
2018-11-04 12:28:59,266 [2975547] DEBUG - brains.cidr.execution.debugger - <^done
2018-11-04 12:28:59,266 [2975547] DEBUG - brains.cidr.execution.debugger - <(gdb)
2018-11-04 12:28:59,266 [2975547] DEBUG - brains.cidr.execution.debugger - >-enable-pretty-printing
2018-11-04 12:28:59,267 [2975548] DEBUG - brains.cidr.execution.debugger - <^done
2018-11-04 12:28:59,267 [2975548] DEBUG - brains.cidr.execution.debugger - <(gdb)
2018-11-04 12:28:59,267 [2975548] DEBUG - brains.cidr.execution.debugger - >-file-exec-and-symbols "/opt/dev/my_app/stpub/debug/client"
2018-11-04 12:28:59,982 [2976263] DEBUG - brains.cidr.execution.debugger - <^done
2018-11-04 12:28:59,982 [2976263] DEBUG - brains.cidr.execution.debugger - <(gdb)
2018-11-04 12:28:59,983 [2976264] DEBUG - brains.cidr.execution.debugger - >-target-select remote tcp:localhost:4444
2018-11-04 12:28:59,992 [2976273] DEBUG - brains.cidr.execution.debugger - <=tsv-created,name="trace_timestamp",initial="0"\n
2018-11-04 12:28:59,993 [2976274] DEBUG - brains.cidr.execution.debugger - <=thread-group-started,id="i1",pid="5764"
2018-11-04 12:28:59,993 [2976274] DEBUG - brains.cidr.execution.debugger - <=thread-created,id="1",group-id="i1"
2018-11-04 12:29:00,008 [2976289] DEBUG - brains.cidr.execution.debugger - <~"Reading /usr/local/st/lib.opsecsdk_sha256/libCPMIClient501.so from remote target...\n"
2018-11-04 12:29:00,009 [2976290] DEBUG - brains.cidr.execution.debugger - <&"warning: File transfers from remote targets can be slow. Use \"set sysroot\" to access files locally instead.\n"

... list of loaded libraries...


2018-11-04 12:30:29,983 [3066264] WARN - brains.cidr.execution.debugger - Command timed out (90000): -target-select remote tcp:localhost:4444
2018-11-04 12:30:29,983 [3066264] DEBUG - brains.cidr.execution.debugger -
com.jetbrains.cidr.execution.debugger.backend.DebuggerCommandTimedOutException: Command timed out
at com.jetbrains.cidr.execution.debugger.backend.gdb.GDBDriver.executeCommandNoUserException(GDBDriver.java:2829)
at com.jetbrains.cidr.execution.debugger.backend.gdb.GDBDriver.o(GDBDriver.java:1054)
at com.jetbrains.cidr.execution.debugger.backend.gdb.GDBDriver.access$1400(GDBDriver.java:51)
at com.jetbrains.cidr.execution.debugger.backend.gdb.GDBDriver$7.startImpl(GDBDriver.java:628)
at com.jetbrains.cidr.execution.debugger.backend.DebuggerDriver$Inferior.start(DebuggerDriver.java:668)
at com.jetbrains.cidr.execution.debugger.CidrDebugProcess.doStartTarget(CidrDebugProcess.java:436)
at com.jetbrains.cidr.execution.debugger.CidrDebugProcess.b(CidrDebugProcess.java:429)
at com.jetbrains.cidr.execution.debugger.CidrDebugProcess$VoidDebuggerCommand.call(CidrDebugProcess.java:652)
at com.jetbrains.cidr.execution.debugger.CidrDebugProcess$VoidDebuggerCommand.call(CidrDebugProcess.java:646)
at com.jetbrains.cidr.execution.debugger.CidrDebugProcess.a(CidrDebugProcess.java:530)
at com.jetbrains.cidr.execution.ExecutionQueueProcessor.a(ExecutionQueueProcessor.java:26)
at com.jetbrains.cidr.execution.ExecutionQueueProcessor.a(ExecutionQueueProcessor.java:36)
at com.intellij.util.concurrency.QueueProcessor$RunnableConsumer.consume(QueueProcessor.java:280)
at com.intellij.util.concurrency.QueueProcessor$RunnableConsumer.consume(QueueProcessor.java:277)
at com.intellij.util.concurrency.QueueProcessor.lambda$null$0(QueueProcessor.java:79)
at com.intellij.util.concurrency.QueueProcessor.runSafely(QueueProcessor.java:232)
at com.intellij.util.concurrency.QueueProcessor.lambda$wrappingProcessor$1(QueueProcessor.java:79)
at com.intellij.util.concurrency.QueueProcessor.lambda$null$3(QueueProcessor.java:212)
at com.intellij.util.concurrency.QueueProcessor.runSafely(QueueProcessor.java:232)
at com.intellij.util.concurrency.QueueProcessor.lambda$startProcessing$4(QueueProcessor.java:212)
at com.intellij.openapi.application.impl.ApplicationImpl$1.run(ApplicationImpl.java:314)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
2018-11-04 12:30:31,485 [3067766] WARN - brains.cidr.execution.debugger - Command timed out (1500): -target-select remote tcp:localhost:4444
2018-11-04 12:30:31,485 [3067766] WARN - brains.cidr.execution.debugger - Command timed out
com.jetbrains.cidr.execution.debugger.backend.DebuggerCommandTimedOutException: Command timed out
at com.jetbrains.cidr.execution.debugger.backend.gdb.GDBDriver.executeCommandNoUserException(GDBDriver.java:2829)
at com.jetbrains.cidr.execution.debugger.backend.gdb.GDBDriver.doExit(GDBDriver.java:1314)
at com.jetbrains.cidr.execution.debugger.backend.DebuggerDriver$2.processWillTerminate(DebuggerDriver.java:831)
at sun.reflect.GeneratedMethodAccessor101.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at com.intellij.execution.process.ProcessHandler$5.invoke(ProcessHandler.java:223)
at com.sun.proxy.$Proxy21.processWillTerminate(Unknown Source)
at com.intellij.execution.process.ProcessHandler.fireProcessWillTerminate(ProcessHandler.java:205)
at com.intellij.execution.process.ProcessHandler.access$200(ProcessHandler.java:26)
at com.intellij.execution.process.ProcessHandler$1.run(ProcessHandler.java:99)
at com.intellij.execution.process.ProcessHandler$TasksRunner.execute(ProcessHandler.java:256)
at com.intellij.execution.process.ProcessHandler.destroyProcess(ProcessHandler.java:95)
at com.jetbrains.cidr.execution.debugger.CidrDebugProcess.handleCommandException(CidrDebugProcess.java:769)
at com.jetbrains.cidr.execution.debugger.CidrDebugProcess.a(CidrDebugProcess.java:533)
at org.jetbrains.concurrency.AsyncPromise.setError(AsyncPromise.kt:144)
at com.jetbrains.cidr.execution.ExecutionQueueProcessor.a(ExecutionQueueProcessor.java:29)
at com.jetbrains.cidr.execution.ExecutionQueueProcessor.a(ExecutionQueueProcessor.java:36)
at com.intellij.util.concurrency.QueueProcessor$RunnableConsumer.consume(QueueProcessor.java:280)
at com.intellij.util.concurrency.QueueProcessor$RunnableConsumer.consume(QueueProcessor.java:277)
at com.intellij.util.concurrency.QueueProcessor.lambda$null$0(QueueProcessor.java:79)
at com.intellij.util.concurrency.QueueProcessor.runSafely(QueueProcessor.java:232)
at com.intellij.util.concurrency.QueueProcessor.lambda$wrappingProcessor$1(QueueProcessor.java:79)
at com.intellij.util.concurrency.QueueProcessor.lambda$null$3(QueueProcessor.java:212)
at com.intellij.util.concurrency.QueueProcessor.runSafely(QueueProcessor.java:232)
at com.intellij.util.concurrency.QueueProcessor.lambda$startProcessing$4(QueueProcessor.java:212)
at com.intellij.openapi.application.impl.ApplicationImpl$1.run(ApplicationImpl.java:314)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
2018-11-04 12:30:33,877 [3070158] INFO - ntellij.util.io.BaseDataReader - Stream closed
java.io.IOException: Stream closed
at java.io.BufferedInputStream.getBufIfOpen(BufferedInputStream.java:170)
at java.io.BufferedInputStream.read1(BufferedInputStream.java:283)
at java.io.BufferedInputStream.read(BufferedInputStream.java:345)
at sun.nio.cs.StreamDecoder.readBytes(StreamDecoder.java:284)
at sun.nio.cs.StreamDecoder.implRead(StreamDecoder.java:326)
at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:178)
at java.io.InputStreamReader.read(InputStreamReader.java:184)
at java.io.Reader.read(Reader.java:140)
at com.intellij.util.io.BaseOutputReader.readAvailableBlocking(BaseOutputReader.java:137)
at com.intellij.util.io.BaseDataReader.readAvailable(BaseDataReader.java:85)
at com.intellij.util.io.BaseDataReader.doRun(BaseDataReader.java:163)
at com.intellij.util.io.BaseDataReader$1$1.run(BaseDataReader.java:66)
at com.intellij.util.ConcurrencyUtil.runUnderThreadName(ConcurrencyUtil.java:229)
at com.intellij.util.io.BaseDataReader$1.run(BaseDataReader.java:63)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
2018-11-04 12:30:34,002 [3070283] INFO - brains.cidr.execution.debugger - Debugger exited with code 0
2018-11-04 12:30:34,002 [3070283] DEBUG - brains.cidr.execution.debugger - <[terminated]
2018-11-04 12:30:37,005 [3073286] WARN - brains.cidr.execution.debugger - Cannot detach/abort. Forcing driver termination

 

Thanks,

Michael.

0
3 comments

Hello! Have you properly configured a GDB Remote Debug configuration? Here are the descriptions of the settings: https://www.jetbrains.com/help/clion/2018.3/remote-debug.html.

0

I think it is correct. Please see the configuration in my updated question.

0

Michael, please reproduce the issue once again and provide the entire resulting debugger log to clion-support at jetbrains.com, so we could take a look. Note that logs might contain private user's information (like file paths and names). Thanks in advance.

0

Please sign in to leave a comment.