Software Archive
Read-only legacy content
Announcements
FPGA community forums and blogs have moved to the Altera Community. Existing Intel Community members can sign in with their current credentials.
17060 Discussions

Cilk Tools error while loading shared libraries

Nicholas_N_
Beginner
1,361 Views

I have successfully compiled cilkplus for gcc (4.8 branch) on Ubuntu 14.04 LTS and compiled the example program fib on the cilkplus website.  I would like to run cilkview and cilkscreen on it, and so I downloaded cilk tools from the website as well.  However, when I try to run cilkview, I get the following error:

[plain]Cilkview: Generating scalability data

-t: error while loading shared libraries: -t: cannot open shared object file: No such file or directory[/plain]

I've tried changing the environment variables $LIBRARY_PATH and $LD_LIBRARY_PATH to point to the libraries in the cilk tools directory, but I still come up with the same error.  I also noticed that on the cilk tools downloads, for linux there is an extra set of libraries (libelf and libdwarf), which I have also installed on my system.  I tried looking at the depenencies for cilkview, but I couldn't find anything unusual with those.  Here is the output:

[plain]$ ldd cilkview

    linux-gate.so.1 =>  (0xf7735000)

    libm.so.6 => /lib32/libm.so.6 (0xf76d1000)

    libstdc++.so.6 => /usr/lib32/libstdc++.so.6 (0xf75e8000)

    libgcc_s.so.1 => /usr/lib32/libgcc_s.so.1 (0xf75cb000)

    libc.so.6 => /lib32/libc.so.6 (0xf741f000)

    libdl.so.2 => /lib32/libdl.so.2 (0xf741a000)[/plain]

I would particularly like to run cilkview, but the error persists for both cilkview and cilkscreen.  It looks like the error is loading libraries; however,  I have no idea why it calls the library -t.  Any help with this would be much appreciated.

0 Kudos
7 Replies
Barry_T_Intel
Employee
1,361 Views

Try adding "--verbose" to the cilkview command. It should dump a bunch of information to help you (and us) debug the problem. Specifically, it will show you the Pin command that's being executed.

   - Barry

0 Kudos
Nicholas_N_
Beginner
1,361 Views

Here is the output of the verbose cilkview command:

[plain]PIN Environment variables:

LD_LIBRARY_PATH=/home/nick/cilktools-linux/lib64:/home/nick/cilkplus-install/lib:/home/nick/cilkplus-install/lib64:

PIN_APP_LD_ASSUME_KERNEL=<undefined>

PIN_APP_LD_LIBRARY_PATH=/home/nick/cilktools-linux/lib64:/home/nick/cilkplus-install/lib:/home/nick/cilkplus-install/lib64:

PIN_APP_LD_BIND_NOW=1

PIN_APP_LD_PRELOAD=<undefined>

PIN_LD_RESTORE_REQURED=<undefined>

PIN_VM_LD_LIBRARY_PATH=/home/nick/cilktools-linux/lib64:/home/nick/cilkplus-install/lib:/home/nick/cilkplus-install/lib64:

Cilkview: Generating scalability data

PIN command:

/home/nick/cilktools-linux/lib64/pinbin -t /home/nick/cilktools-linux/lib64/cilkview-tool.so -cvout ./REU_14/fib.cvdata -cores 16 -- ./REU_14/fib

-t: error while loading shared libraries: -t: cannot open shared object file: No such file or directory[/plain]

 

 

0 Kudos
Barry_T_Intel
Employee
1,361 Views

OK, taking the information from Pin command:

/home/nick/cilktools-linux/lib64/pinbin -t /home/nick/cilktools-linux/lib64/cilkview-tool.so -cvout ./REU_14/fib.cvdata -cores 16 -- ./REU_14/fib
  -t: error while loading shared libraries: -t: cannot open shared object file: No such file or directory

 

The message is telling you that the system cannot find the Pintool - cilkview-tools.so. According to the output, it should be at /home/nick/cilktools-linux/lib64/cilkview-tool.so. Does that file exist? If not, you've got a broken Cilk Tools installation. If it does exist, is there a pin.log file in the directory you're running from?

    - Barry

0 Kudos
Nicholas_N_
Beginner
1,361 Views

There is a library called cilkview-tool.so at /home/nick/cilktools-linux/lib64/cilkview-tool.so.  After I execute the cilkview command, I do not see a pin.log file.

Originally I did have pin.log files from a previous error about ptrace(), which is mentioned and solved in this forum thread; however, I am not getting a pin.log for this particular error.

0 Kudos
Barry_T_Intel
Employee
1,361 Views

FYI, "cilkview" is simply a driver. It's generating the Pin command that actually runs your application under Cilkview.

The protections on /home/nick/cilktools-linux/lib64/cilkview-tool.so are correct, right? Try using ldd on cilkview-tool.so to see if a dependency is not being found.

The value displayed for LD_LIBRARY_PATH is what Pin (pinbin) will be run with. The value displayed for PIN_APP_LD_LIBRARY_PATH is what will be in effect when your application is loaded.

   - Barry

0 Kudos
Nicholas_N_
Beginner
1,361 Views

Here is the output of ldd cilkview-tool.so:

[plain]linux-vdso.so.1 =>  (0x00007fff5ff3c000)

libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007fd3c24a4000)

libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007fd3c2286000)

libdwarf.so (0x00007fd3c204b000)

libelf.so.0 (0x00007fd3c1e34000)

libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007fd3c1b2e000)

libstdc++.so.6 => /home/nick/cilkplus-install/lib64/libstdc++.so.6 (0x00007fd3c182b000)

libgcc_s.so.1 => /home/nick/cilkplus-install/lib64/libgcc_s.so.1 (0x00007fd3c1615000)

libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fd3c124f000)

/lib64/ld-linux-x86-64.so.2 (0x00007fd3c2c4b000)[/plain]

I'm confused as to why the Pin command generates the error listing the -t argument rather than listing cilkview-tool.so.

 

 

0 Kudos
Barry_T_Intel
Employee
1,361 Views

You can get the list of options for pinbin by running it with the "-help" option.  "-t" specifies the Pintool to be run. In this case it's cilkview.so.

The one odd thing I can see is the display for libdwarf.so and libelf.so.0.  It should be resolving them from your Cilk tools library directory.  Try adding it to the front of LD_LIBRARY_PATH, though cilkview (the driver) should be doing that for you.

   - Barry

0 Kudos
Reply