Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

./txrx-tsn: error while loading shared libraries: libbpf.so.0: cannot open shar #25

Open
assistof opened this issue Oct 25, 2021 · 1 comment

Comments

@assistof
Copy link

Hello how are you?

I would like to know if someone can help me with a problem I have been having to run the last two IOTG applications (AF_PACKET & AF_XDP socket-based application and OPCUA-SERVER - AF_PACKET & AF_XDP OPCUA-based application. Specifically, both use the binary . /txrx-tsn, which is causing the problem.

First of all, I would like to indicate that I have installed and resolved all dependencies indicated by you in the README.

Custom linux kernel headers
Custom linux-libc-headers
Custom libopen62541-iotg
Custom libbpf
libelf
libjson-c
For run-time:

Custom linux kernel
shell tools including awk/sed
iproute2-ss200127
linuxptp v3.0
Python 3.8.2
gnuplot 5.2
IceWM - Any GUI/window manager can be used, required to display graphs.

All are up and running.

The problem log.
root@net1:/home/mirc/iotg_tsn_ref_sw# ./run.sh i225 enp2s0 vs1a run
Run.sh selected: vs1a
'./afpkt-txtstamps.txt' -> '/tmp/afpkt-txtstamps.txt'
'./afxdp-txtstamps.txt' -> '/tmp/afxdp-txtstamps.txt'
PHASE 1: AF_PACKET transmit (1010 seconds)
CMD: ./txrx-tsn -i enp2s0 -PtTq 1 -n 500000 -l 64 -y 2000000 -e 700000 -o 20000
./txrx-tsn: error while loading shared libraries: libbpf.so.0: cannot open shar

As you can see above, the txrx-tsn binary cannot find libbpf.so.0. The strange thing that I performed the iotg build, like the ./build command and everything flows fine. Also, the libbpf flgas seem to be correctly indicated (Figure).

image

I did an analysis of the files, MakeFile-->configure-->trxr.c and txrx.h --> in addition to the related sources and found no directory specification.

As the problem seems to be directly related to the libbpf Installation location, in the Figure you can see that the installation location of the necessary files are in the directory converging with the MakeFile.

image

Can anybody help me?

@assistof
Copy link
Author

I solved this problems...
Note that you have the directory (where libbpf libs were installed) listed in /etc/ld.so.conf.
In my case, when I performed the make install in libbpf, it installed in /usr/lib64/, so I added the line file in the lidconfig settings.
In other words, briefly, the steps are: 1- add the line /usr/lib64 to the /etc/ld.so.conf file, 2- run the ldconfig command.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant