rticonnextdds-getting-started icon indicating copy to clipboard operation
rticonnextdds-getting-started copied to clipboard

.NET 5 Linux Debugger Issue

Open theotheri opened this issue 4 years ago • 0 comments

Hi there, I imagine most C# .NET 5 users on Linux running your software will be using visual studio code. The subscriber brings the debugger down, which might be easier for you to troubleshoot (can't create a reproducible setup for them (they'll probably not have a license), so I though i'll post this here).

Steps to reproduce:

  • Checkout master (3a29c8b attow)
  • In 2_hello_world/csharp: ** add the license to the USER_QOS_PROFILES.xml ** Generate the cs files /opt/rti_connext_dds-6.1.0/bin/rtiddsgen -language c# ../hello_world.idl ** Copy the generated files to the csharp folder ** Run dotnet restore && dotnet build

Running dotnet run --sub and dotnet run --pub will work, i.e. samples are received.

When debugging the subscriber in vscode, e.g with a launch file:

{
  "version": "0.2.0",
  "configurations": [
    {
      "name": "sub",
      "type": "coreclr",
      "request": "launch",
      "program": "${workspaceFolder}/2_hello_world/csharp/bin/Debug/net5.0/hello_world.dll",
      "args": [
        "--sub"
      ],
      "cwd": "${workspaceFolder}/2_hello_world/csharp",
      "stopAtEntry": false,
      "env": {
        "ASPNETCORE_ENVIRONMENT": "Development"
      },
      "logging": {
        "engineLogging": true
      }
    },
    {
      "name": "pub",
      "type": "coreclr",
      "request": "launch",
      "program": "${workspaceFolder}/2_hello_world/csharp/bin/Debug/net5.0/hello_world.dll",
      "args": [
        "--pub"
      ],
      "cwd": "${workspaceFolder}/2_hello_world/csharp",
      "stopAtEntry": false,
      "env": {
        "ASPNETCORE_ENVIRONMENT": "Development"
      },
    },
  ]
}

as soon as the subscriber receives data, the debugger exits saying "hello_world.dll has exited with code 0" and coredumpctl list dotnet exited with SIGTRAP. This renders the strong types unusable, which is a deal-breaker, DynamicData works.

Any ideas as to how to go about fixing this?

theotheri avatar Jul 27 '21 08:07 theotheri