Results 1 to 2 of 2

Thread: library loading error

  1. #1

    library loading error

    I've run across a test case where I can load and run my program from the Linux command line, but
    when I try to attach totalview to the running process (totalview 8.8), it is unable to attach.
    The GUI says something to the effect of "unable to create process object", and the terminal log
    says that it is unable to find shared library libFooBar.so.

    After a lot of guessing about what might be wrong, I was able to workaround this problem
    by adding additional components to the LD_LIBRARY_PATH, and launching totalview again.
    Then, it was able to find the library.

    Why is totalview unable to work with the same LD_LIBRARY_PATH that the C++ runtime loader uses?

    Hint: I think it has something to do with automount paths.

    Ben White

  2. #2
    Hi Ben,

    Can TotalView run the program from the beginning, rather than attaching when it is already running? TV will exec a copy of the program at first, but not run it, in order to get shared library information. Normally if you do an

    ldd foo

    and no libraries are listed as 'not found', it should be good to go. If the debugger can launch the process, but can't attach to it while it's running, could it be that there are extra libraries that are dynamically loaded during the run? Just a speculation on my part. The need to set your LD_LIBRARY_PATH is a known and basic restriction, but normally that extends to launching it standalone as well, and not just under the debugger.

    Regards,
    Pete Thompson
    Pete Thompson
    TotalView Customer Services

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •