2 Replies Latest reply: Nov 28, 2011 3:27 PM by Ivanigorovich-Oracle RSS

    dbx failed to start

    900331
      Hiya,

      I'm having some trouble using dbx inside Studio 12.2 with the GNU toolset. The OS is OEL 6.1.

      Starting a debugging session gives this error:
      For information about new features see `help changes'
      To remove this message, put `dbxenv suppress_startup_message 7.8' in your .dbxrc
      (dbx) cd /home/james/ws/projects/ws_proxy
      (dbx) debug /home/james/ws/projects/ws_proxy/dist/Debug/GNU-Linux-x86/ws_proxy 
      Reading ws_proxy
      dbx: warning: unknown location expression code (0x9c)
      
      <...repeated many times...>
      
      Reading ld-linux-x86-64.so.2
      Reading libpthread.so.0
      Reading libstdc++.so.6
      Reading libm.so.6
      Reading libgcc_s.so.1
      Reading libc.so.6
      dbx: warning: unknown location expression code (0x9c)
      
      <..repeated many times...>
      
      dbx: internal error: signal SIGSEGV (no mapping at the fault address)
      dbx's coredump will appear in /tmp
      dbx terminated
      I'm unsure what the error means, but it seems to be a problem with ws_proxy (or ws_crypto, the static library it's linked with) and libc.so.6.

      Does anyone know where I can find more information about this?

      Many thanks.
        • 1. Re: dbx failed to start
          900331
          Oddly the problem seems to be with std::hex.

          I can create a C++ project with the following source file, and use the GNU toolset inside Studio 12.2 to build:
          #include <cstdlib>
          #include <iostream>
          
          using namespace std;
          
          int main(int argc, char** argv) {
          
              std::cout << std::hex << 5 << "\n";
              
              return 0;
          }
          I left all project properties at defaults. Pressing Ctrl-F5 to start dbx gives an error containing many 'dbx: warning: unknown location expression code (0x9c)'.

          If std::hex is removed, the debugger starts without a problem.
          • 2. Re: dbx failed to start
            Ivanigorovich-Oracle
            This new expression location code 0xc9c is a bit of debugger symbolic information produced by
            the newer GNU compilers on OL 6.1.

            SolStudio 12.2 is certified only up to Oracle Enterprise Linux 5.

            This is fixed in the upcoming SolStudio 12.3 (the fcs version, not the beta).

            As a workaround you can also try to switch you GNU compiler options to use "-gdwarf-2"