Sample Header Ad - 728x90

Unix & Linux Stack Exchange

Q&A for users of Linux, FreeBSD and other Unix-like operating systems

Latest Questions

1 votes
1 answers
2177 views
libpcap missing
I’m trying to run a C program, but every time I try to run it I get this message: error while loading shared libraries: libpcap.so.0.8: cannot open shared object file: No such file or directory I've re-installed `libpcap`; I've installed `gcc` and `g++`; I’ve updated it and I’m lost. I’m not sure wh...
I’m trying to run a C program, but every time I try to run it I get this message: error while loading shared libraries: libpcap.so.0.8: cannot open shared object file: No such file or directory I've re-installed libpcap; I've installed gcc and g++; I’ve updated it and I’m lost. I’m not sure what else I can do. Could anyone help out?
Adam (11 rep)
Feb 28, 2015, 01:14 AM • Last activity: May 27, 2025, 05:00 PM
0 votes
1 answers
48 views
System paths in LD_LIBRARY_PATH
Is it acceptable to specify system paths (/lib, /usr/lib, contents of ld.so.conf.d, etc.) in LD_LIBRARY_PATH? Wouldn't this cause problems? My goal is that an external program, which I can't rebuild at will, would look for libraries first in the system paths, and only if there are none, in my direct...
Is it acceptable to specify system paths (/lib, /usr/lib, contents of ld.so.conf.d, etc.) in LD_LIBRARY_PATH? Wouldn't this cause problems? My goal is that an external program, which I can't rebuild at will, would look for libraries first in the system paths, and only if there are none, in my directories. So I want to specify the system paths first, then my directories in the LD_LIBRARY_PATH variable. I know it's better to use containers for these situations, but I'm limited in what I can do.
svirpen (3 rep)
May 17, 2025, 01:44 PM • Last activity: May 17, 2025, 04:09 PM
0 votes
3 answers
2613 views
Error while generating cookbook: Missing shared library "libcrypt.so.1"
I encountered an error when trying to generate a cookbook using the command `chef generate cookbook test-cookbook`. The error message I received is as follows: ``` ERROR : exit status 127 /opt/chef-workstation/embedded/bin/ruby: error while loading shared libraries: libcrypt.so.1: cannot open shared...
I encountered an error when trying to generate a cookbook using the command chef generate cookbook test-cookbook. The error message I received is as follows:
ERROR : exit status 127
/opt/chef-workstation/embedded/bin/ruby:  error while loading shared libraries: libcrypt.so.1: cannot open shared object file: No such file or directory
The error appears to be caused by a missing shared library called libcrypt.so.1. How can I fix this issue and generate the cookbook successfully?
utkarsh gupta (1 rep)
May 16, 2023, 12:15 PM • Last activity: Apr 26, 2025, 06:08 PM
0 votes
0 answers
84 views
ldd not showing actual shared libraries address
After having deactivated ASLR, with: `echo 0 | sudo tee /proc/sys/kernel/randomize_va_space` I used `ldd /path/to/binary` to get the address of the shared library that my binary (written in C) was using, and I got the next output : ``` linux-vdso.so.1 (0x00007ffff7fc4000) libc.so.6 => /usr/lib/libc....
After having deactivated ASLR, with: echo 0 | sudo tee /proc/sys/kernel/randomize_va_space I used ldd /path/to/binary to get the address of the shared library that my binary (written in C) was using, and I got the next output :
linux-vdso.so.1 (0x00007ffff7fc4000)
	libc.so.6 => /usr/lib/libc.so.6 (0x00007ffff7da5000)
	/lib64/ld-linux-x86-64.so.2 => /usr/lib64/ld-linux-x86-64.so.2 (0x00007ffff7fc6000)
The reason I did that is because I'm using [gdb-pwndbg](https://github.com/pwndbg/pwndbg) to understand how the binary is working in order to exploit it. And in order to exploit the binary i needed the libc address that the binary had in use. But after running the binary and breaking within execution, I wanted to check that things were working, so I printed out the contents of the /usr/lib/libc.so.6 address and got the following:
pwndbg> x 0x00007ffff7da5000
0x7ffff7da5000:
That shouldn't haven been occurring. I was supposed to get : 0x7ffff7da5000: "\177ELF\002\001\001\003" Or something similar. And that is Crazy! So I remembered that I had I similar file which too needed the use of the /usr/lib/libc.so.6 address, so went to that file and ran ldd and got 0x00007ffff7daa000 as the address. And like before i printed the contents of that address within an execution break of the binary which i wanted to exploit :
pwndbg> x 0x00007ffff7daa000
0x7ffff7daa000:	"\177ELF\002\001\001\003"
After that I was capable of use the address to exploit the binary. So i don't know what happens with that binary, even after having recompiled the binary a couple of times, it didn't have any effects. So I'm curious, or how can I fix this or prevent it?
rustymanito (35 rep)
Apr 25, 2025, 03:24 AM • Last activity: Apr 25, 2025, 11:04 PM
1 votes
1 answers
4283 views
libreadline.so.6: cannot open shared object file. Have libreadline-7 and dev
Im getting the error below while trying to run vtysh for some network simulations ``` vtysh: error while loading shared libraries: libreadline.so.6: cannot open shared object file: No such file or directory ``` Currently I have libreadline-dev and libreadline-7 installed, and made a symlink that poi...
Im getting the error below while trying to run vtysh for some network simulations
vtysh: error while loading shared libraries: libreadline.so.6: cannot open shared object file: No such file or directory
Currently I have libreadline-dev and libreadline-7 installed, and made a symlink that points to libreadline.so.7 at /lib/x86_64-linux-gnu/libreadline.so.6 but to no avail. I'm assuming it might be looking for a different path, but I'm not sure how to approach troubleshooting problems like these. ------------------------- No such luck with the suggestions below. After compiling readline6.3 from the source code as suggested below, my output from ldconfig -v | grep readline is:
/sbin/ldconfig.real: Can't stat /usr/local/lib/x86_64-linux-gnu: No such file or directory
/sbin/ldconfig.real: Path `/lib/x86_64-linux-gnu' given more than once
/sbin/ldconfig.real: Path `/usr/lib/x86_64-linux-gnu' given more than once
	libreadline.so.6 -> libreadline.so.6.3
	libreadline.so.7 -> libreadline.so.7.0
/sbin/ldconfig.real: /lib/x86_64-linux-gnu/ld-2.27.so is the dynamic linker, ignoring

	libguilereadline-v-18.so.18 -> libguilereadline-v-18.so.18.0.0
/home/gdc/Desktop/readline-6.3:
/sbin/ldconfig.real: /lib32/ld-2.27.so is the dynamic linker, ignoring
TrigsSei (11 rep)
Jul 16, 2021, 08:20 PM • Last activity: Apr 20, 2025, 04:01 AM
0 votes
0 answers
45 views
I have an AI program which uses Vulkan API. I want to run it on a Debian server without GPU
I have an AI program which uses Vulkan API. I want to run it on a Debian server without GPU. I know running Vulkan on CPU is possible but it's slow. What should I install/configure to have Vulkan on CPU on Debian 9? Right now I just get this error: > error while loading shared libraries: libvulkan.s...
I have an AI program which uses Vulkan API. I want to run it on a Debian server without GPU. I know running Vulkan on CPU is possible but it's slow. What should I install/configure to have Vulkan on CPU on Debian 9? Right now I just get this error: > error while loading shared libraries: libvulkan.so.1: cannot open > shared object file: No such file or directory I think I found a solution: https://github.com/google/swiftshader But I can't test it because my cmake is too old.
Tom (237 rep)
Feb 20, 2025, 09:07 PM • Last activity: Feb 21, 2025, 06:34 AM
9 votes
1 answers
4567 views
Opening .dmp (Mini DuMP crash report) file
I downloaded a game. It has a issue of just not working every time I launch it I'm welcomed by a white screen. Did some cli magic, found out that the game is missing few libraries, installed them. The game still doesn't work, as far as I was able to find out it has trouble loading `libsteam_api.so`...
I downloaded a game. It has a issue of just not working every time I launch it I'm welcomed by a white screen. Did some cli magic, found out that the game is missing few libraries, installed them. The game still doesn't work, as far as I was able to find out it has trouble loading libsteam_api.so which I can't find a fix for too. The game has few launch scripts, and when launched with one it generates a .dmp file, running file shows the file type as: Mini DuMP crash report \* found old discussion on steam which suggested that my gpu just isn't fast enough, but I'm still going to try and fix it
user419050 (385 rep)
Jul 16, 2020, 07:52 PM • Last activity: Feb 8, 2025, 02:00 AM
0 votes
0 answers
98 views
How can I get libc-client.so.2007?
I downloaded the source code for UW-IMAP/imap-2007f_upstream from the URL below. [https://github.com/uw-imap/imap/archive/refs/tags/imap-2007f_upstream.tar.gz][1] I compiled it, but libc-client.so.2007 was not generated. I compiled it by executing the following command: make lnp PASSWDTYPE=pam SSLTY...
I downloaded the source code for UW-IMAP/imap-2007f_upstream from the URL below.
https://github.com/uw-imap/imap/archive/refs/tags/imap-2007f_upstream.tar.gz I compiled it, but libc-client.so.2007 was not generated.
I compiled it by executing the following command:
make lnp PASSWDTYPE=pam SSLTYPE=unix EXTRACFLAGS=-fPIC The OS environment is AlmaLinux8.10. I want libc-client.so.2007 that links to the latest OpenSSL3.4.0, not the libc-client.so.2007 that links to OpenSSL1.1.1. That's why I'm compiling it from source code. Is there any way to get libc-client.so.2007 by compiling?
Zeotech (1 rep)
Feb 1, 2025, 10:02 AM • Last activity: Feb 2, 2025, 05:03 AM
4 votes
2 answers
5584 views
Run program with specified library
Is it possible to specify a path with the library that the program should use instead of searching system variables?
Is it possible to specify a path with the library that the program should use instead of searching system variables?
Kris_Holder (41 rep)
Aug 30, 2022, 01:33 PM • Last activity: Jan 20, 2025, 09:43 PM
2 votes
1 answers
47 views
Why can I not intercept `write` in `seq`?
Based on https://unix.stackexchange.com/questions/784690/limit-file-io-speed I have built https://git.data.coop/tange/tangetools/src/branch/master/iothrottle It works for some programs: iothrottle -i 10M cat foo > bar # Yes, here you could just use pv iothrottle -o 1M ffmpeg -i foo.mp3 foo.wav iothr...
Based on https://unix.stackexchange.com/questions/784690/limit-file-io-speed I have built https://git.data.coop/tange/tangetools/src/branch/master/iothrottle It works for some programs: iothrottle -i 10M cat foo > bar # Yes, here you could just use pv iothrottle -o 1M ffmpeg -i foo.mp3 foo.wav iothrottle -o 1M cp -a foodir /other/fs/foodir This does not: iothrottle -o 1M cp -a foodir /same/fs/foodir because on the same file system cp uses a single call to copy_file_range per file. I am OK with that limitation. It also does not work for seq. When I run strace seq 100000 I get: ~~~ write(1, "1\n2\n3\n4\n5\n6\n7\n8\n9\n10\n11\n12\n13\n14"..., 8192) = 8192 write(1, "\n1861\n1862\n1863\n1864\n1865\n1866\n1"..., 4096) = 4096 write(1, "2680\n2681\n2682\n2683\n2684\n2685\n26"..., 4096) = 4096 write(1, "499\n3500\n3501\n3502\n3503\n3504\n350"..., 4096) = 4096 write(1, "18\n4319\n4320\n4321\n4322\n4323\n4324"..., 4096) = 4096 write(1, "7\n5138\n5139\n5140\n5141\n5142\n5143\n"..., 4096) = 4096 write(1, "\n5957\n5958\n5959\n5960\n5961\n5962\n5"..., 4096) = 4096 write(1, "6776\n6777\n6778\n6779\n6780\n6781\n67"..., 4096) = 4096 write(1, "595\n7596\n7597\n7598\n7599\n7600\n760"..., 4096) = 4096 write(1, "14\n8415\n8416\n8417\n8418\n8419\n8420"..., 4096) = 4096 write(1, "3\n9234\n9235\n9236\n9237\n9238\n9239\n"..., 3838) = 3838 ~~~ So it seems to call write (and not some mmap or other magic), and thus ought to work. But when I run: IOTHROTTLE_DEBUG=1 iothrottle -o 1M seq 10000 >/dev/null I get: ~~~ init called: default read_limit=0, write_limit=0 IOTHROTTLE_READ=0 IOTHROTTLE_WRITE=1048576 Final read_limit=0, write_limit=1048576 allowed: 608 written: 0 allowed: 617 written: 0 ~~~ This tells me that iothrottle only intercepts 2 calls to write. What am I missing?
Ole Tange (37348 rep)
Dec 29, 2024, 07:53 PM • Last activity: Dec 30, 2024, 07:42 AM
1 votes
0 answers
31 views
Mutt Segmentation Fault with MX Linux 21.3 #129
New noob here. Using MX Linux, set up Mutt with gmail. Was initially successful. Emails and all. Then at some point when trying to use again, it stuck at 4% giving a segmentation fault. Using gdb it says: Fetching message headers... 6202/132349 (4%) Program received signal SIGSEGV, Segmentation faul...
New noob here. Using MX Linux, set up Mutt with gmail. Was initially successful. Emails and all. Then at some point when trying to use again, it stuck at 4% giving a segmentation fault. Using gdb it says: Fetching message headers... 6202/132349 (4%) Program received signal SIGSEGV, Segmentation fault. 0x00007ffff7c2ea5f in ?? () from /lib/x86_64-linux-gnu/libtokyocabinet.so.9 (gdb) bt #0 0x00007ffff7c2ea5f in ?? () from /lib/x86_64-linux-gnu/libtokyocabinet.so.9 #1 0x00007ffff7c2fca8 in tcbdbput () from /lib/x86_64-linux-gnu/libtokyocabinet.so.9 #2 0x000055555561e5da in ?? () #3 0x000055555561eded in ?? () #4 0x000055555562dfe3 in ?? () #5 0x000055555562bb1c in ?? () #6 0x000055555562893d in ?? () #7 0x00005555555b774e in ?? () #8 0x000055555556c3ea in ?? () #9 0x00007ffff795cd7a in __libc_start_main () from /lib/x86_64-linux-gnu/libc.so.6 #10 0x000055555556d44a in ?? () What do I do?
Moh Kilani (11 rep)
Dec 28, 2024, 09:00 PM • Last activity: Dec 28, 2024, 09:40 PM
0 votes
0 answers
263 views
Building GCC 12.4, I get: libisl.so.23: ... No such file or directory
I'm trying to build GCC 12.4.0 on Oracle Linux 9.4 (sorry about that... not my choice of distribution), as a non-root user. So, I've downloaded and built my relevant prerequisites: gmp, mpfr, mpc, isl, installing them into their own separate directories. I now try: ```lang-bash ./configure --disable...
I'm trying to build GCC 12.4.0 on Oracle Linux 9.4 (sorry about that... not my choice of distribution), as a non-root user. So, I've downloaded and built my relevant prerequisites: gmp, mpfr, mpc, isl, installing them into their own separate directories. I now try:
-bash
./configure --disable-ada --disable-gnat --disable-fortran --disable-bootstrap \
    --disable-bootstrap --enable-languages=c,c++  \
    --prefix=$HOME/opt/versions/gcc/12.4.0 --with-gmp=$HOME/opt/gmp \
    --with-mpfr=$HOME/opt/mpfr --with-mpc=$HOME/opt/mpc --with-isl=$HOME/opt/isl
but this gives me:
--- snip ---
/home/lh156516/src/gcc/gcc-12.4.0/host-x86_64-pc-linux-gnu/gcc/xgcc -B/home/lh156516/src/gcc/gcc-12.4.0/host-x86_64-pc-linux-gnu/gcc/ -xc -nostdinc /dev/null -S -o /dev/null -fself-test=../.././gcc/testsuite/selftests
/home/lh156516/src/gcc/gcc-12.4.0/host-x86_64-pc-linux-gnu/gcc/xgcc -B/home/lh156516/src/gcc/gcc-12.4.0/host-x86_64-pc-linux-gnu/gcc/ -xc++ -nostdinc /dev/null -S -o /dev/null -fself-test=../.././gcc/testsuite/selftests
/home/lh156516/src/gcc/gcc-12.4.0/host-x86_64-pc-linux-gnu/gcc/cc1: error while loading shared libraries: libisl.so.23: cannot open shared object file: No such file or directory
make: *** [../.././gcc/c/Make-lang.in:128: s-selftest-c] Error 1
make: *** Waiting for unfinished jobs....
/home/lh156516/src/gcc/gcc-12.4.0/host-x86_64-pc-linux-gnu/gcc/cc1plus: error while loading shared libraries: libisl.so.23: cannot open shared object file: No such file or directory
make: *** [../.././gcc/cp/Make-lang.in:206: s-selftest-c++] Error 1
make: *** [Makefile:4619: all-gcc] Error 2
make: *** [Makefile:1034: all] Error 2
All of the prerequisite libraries have been built and installed to their specified ~/opt subdirectories, and I've verified that I indeed have $HOME/opt/isl/lib/libisl.so.23. So, why am I getting this error?
einpoklum (10753 rep)
Dec 22, 2024, 01:36 PM • Last activity: Dec 22, 2024, 09:42 PM
0 votes
0 answers
80 views
GDB doesn't hit catchpoint on the child process forked off from debuggee
I was re-doing what described [here][1] about multiprocessing debugging in `GDB`. The weird thing is that `GDB` doesn't hit the `exec` catchpoint on the child process running `cat` command (the latter is forked off from `bash`). ubuntu@ubuntu:~$ echo $$ 670639 ubuntu@ubuntu:~$ cat /etc/issue root@ub...
I was re-doing what described here about multiprocessing debugging in GDB. The weird thing is that GDB doesn't hit the exec catchpoint on the child process running cat command (the latter is forked off from bash). ubuntu@ubuntu:~$ echo $$ 670639 ubuntu@ubuntu:~$ cat /etc/issue root@ubuntu:~# gdb -q -p 670639 Attaching to process 670639 Reading symbols from /usr/bin/bash... (No debugging symbols found in /usr/bin/bash) Reading symbols from /lib/x86_64-linux-gnu/libtinfo.so.6... (No debugging symbols found in /lib/x86_64-linux-gnu/libtinfo.so.6) Reading symbols from /lib/x86_64-linux-gnu/libc.so.6... Reading symbols from /usr/lib/debug/.build-id/49/0fef8403240c91833978d494d39e537409b92e.debug... Reading symbols from /lib64/ld-linux-x86-64.so.2... Reading symbols from /usr/lib/debug/.build-id/41/86944c50f8a32b47d74931e3f512b811813b64.debug... [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1". pselect64_syscall (sigmask=0x564025a0c820 , timeout=, exceptfds=0x0, writefds=0x0, readfds=0x7ffe468736e0, nfds=1) at ../sysdeps/unix/sysv/linux/pselect.c:34 34 ../sysdeps/unix/sysv/linux/pselect.c: No such file or directory. (gdb) catch fork Catchpoint 1 (fork) (gdb) catch exec Catchpoint 2 (exec) (gdb) c Continuing. Catchpoint 1 (forked process 719946), arch_fork (ctid=0x7fbccdc6fa10) at ../sysdeps/unix/sysv/linux/arch-fork.h:52 52 ../sysdeps/unix/sysv/linux/arch-fork.h: No such file or directory. (gdb) info inferiors Num Description Connection Executable * 1 process 670639 1 (native) /usr/bin/bash (gdb) set detach-on-fork off (gdb) nexti [New inferior 2 (process 719946)] [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1". 52 in ../sysdeps/unix/sysv/linux/arch-fork.h (gdb) c Continuing. What is the reason behind it? Thanks.
CarloC (385 rep)
Nov 26, 2024, 01:20 PM • Last activity: Nov 26, 2024, 01:52 PM
0 votes
0 answers
86 views
I accidentally rename lib/ld-linux-aarch64.so.1 file on my target machine, what should i do?
I accidentally renamed ld-linux-aarch64.so.1. Now I cannot connect my target machine with SSH. How can I rename it back? I will not consider to reflash my target machine.
I accidentally renamed ld-linux-aarch64.so.1. Now I cannot connect my target machine with SSH. How can I rename it back? I will not consider to reflash my target machine.
M. Preacher (1 rep)
Nov 9, 2024, 08:44 PM • Last activity: Nov 9, 2024, 08:51 PM
1 votes
1 answers
4910 views
undefined reference when compiling the driver with shared library file
I made a simple memory manager, and I'm trying to compile it using a shared library in the driver. The shared library files itself compiles fine, however when I compiled the driver by calling the functions in the shared library with my memory manager, it shows me the screenshot below: [![error messa...
I made a simple memory manager, and I'm trying to compile it using a shared library in the driver. The shared library files itself compiles fine, however when I compiled the driver by calling the functions in the shared library with my memory manager, it shows me the screenshot below: error messages Here is my code for the shared.c: /* conveniences for casting and declarations */ typedef block_info* (*MM_CREATE)(size_t, MMPolicy); typedef void* (*MM_ALLOCATE)(block_info *, size_t, char *); typedef int (*MM_DEALLOCATE)(block_info *, void *); typedef void (*MM_DESTROY)(block_info *); /* Function pointers retrieved from the shared library */ typedef struct LibraryFunctions { MM_CREATE create; MM_DESTROY destroy; MM_ALLOCATE allocate; MM_DEALLOCATE deallocate; }LibraryFunctions; /* Loads a shared library and returns a pointer to it in libhandle */ /* Returns SUCCESS, if it successful, otherwise, FAILURE */ int load_library(const char *libname, void **libhandle) { *libhandle = dlopen(*libhandle, RTLD_LAZY); if(!(*libhandle)) { return FAILURE; } else { return SUCCESS; } return *libname; } int get_functions(void *libhandle, LibraryFunctions *functions, const char **fn_names) { functions->create = (MM_CREATE)(intptr_t)dlsym(libhandle, *fn_names); if(!functions->create) { return FAILURE; } functions->destroy = (MM_DESTROY)(intptr_t)dlsym(libhandle, *fn_names); if(!functions->destroy) { return FAILURE; } functions->allocate = (MM_ALLOCATE)(intptr_t)dlsym(libhandle, *fn_names); if(!functions->allocate) { return FAILURE; } functions->deallocate = (MM_DEALLOCATE)(intptr_t)dlsym(libhandle, *fn_names); if(!functions->deallocate) { return FAILURE; } return SUCCESS; } Here is part of the driver code to call the shared library: void setup(void) { const char *fn_names[] = {"mm_create", "mm_destroy", "mm_allocate", "mm_deallocate"}; LibraryFunctions funs; int error; error = load_library("./libmemmgr.so", &gLib); if (error == FAILURE) { printf("load_library failed! %s\n", dlerror()); exit(-1); } error = get_functions(gLib, &funs, fn_names); if (error == FAILURE) { printf("get_functions failed! %s\n", dlerror()); exit(-1); } mmlib_create = funs.create; mmlib_destroy = funs.destroy; mmlib_allocate = funs.allocate; mmlib_deallocate = funs.deallocate; } void teardown(void) { dlclose(gLib); } I'm not sure what is causing the errors. edit: So I managed to run the exe file but I failed on "get_functions". Are there any problems with my get_functions?
TommyLan (35 rep)
Jul 9, 2015, 10:31 PM • Last activity: Nov 7, 2024, 12:14 AM
0 votes
1 answers
196 views
sudo segmentation fault
In a remote system to which I don't have console access, which I'm connecting through `ssh`, I broke the `sudo` installation and now I'm not able to use it at all, and I'm not able to restart as a `root`. The command I ran was: ```lang-sh sudo mv /lib/x86_64-linux-gnu/libm.so.6 /lib/x86_64-linux-gnu...
In a remote system to which I don't have console access, which I'm connecting through ssh, I broke the sudo installation and now I'm not able to use it at all, and I'm not able to restart as a root. The command I ran was:
-sh
sudo mv /lib/x86_64-linux-gnu/libm.so.6 /lib/x86_64-linux-gnu/libm.so.6_org
Everytime I do sudo it says segmentation fault, for example:
-shellsession
~$ sudo -s
Segmentation fault (core dumped)
As specific cases, - id works: uid=1479554(s1474782) gid=100(users) groups=100(users),27(sudo),999(docker) - sh works as well - sudo id doesn't work: sudo id Segmentation fault (core dumped) - su s1474782 -c id doesn't work: sudo id Segmentation fault (core dumped) I was updating some libraries and I think I broke the libm.so.6 library, however I don't see sudo depending on it:
-shellsession
ldd $(which sudo)
    linux-vdso.so.1 =>  (0x00007ffd7ef9e000)
    libaudit.so.1 => /lib/x86_64-linux-gnu/libaudit.so.1 (0x00007f139de21000)
    libselinux.so.1 => /lib/x86_64-linux-gnu/libselinux.so.1 (0x00007f139dbff000)
    libutil.so.1 => /lib/x86_64-linux-gnu/libutil.so.1 (0x00007f139d9fc000)
    libsudo_util.so.0 => /usr/lib/sudo/libsudo_util.so.0 (0x00007f139d7e8000)
    libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f139d41e000)
    libpcre.so.3 => /lib/x86_64-linux-gnu/libpcre.so.3 (0x00007f139d1ae000)
    libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f139cfaa000)
    /lib64/ld-linux-x86-64.so.2 (0x00007f139e26b000)
    libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f139cd8d000)
Any advice how to solve this? I can just re-install sudo?
user236040 (1 rep)
Oct 30, 2024, 02:50 PM • Last activity: Oct 31, 2024, 02:51 PM
0 votes
0 answers
3627 views
Installing the latest version of libpcap & libpcap-dev
In my docker container I run the following command to install the lib pcap: `apt-get install -y libpcap-dev` When I run `apt list --installed` I see this weird output: ``` libpcap-dev/oldstable,now 1.8.1-6 amd64 [installed] libpcap0.8-dev/oldstable,now 1.8.1-6 amd64 [installed,automatic] libpcap0.8/...
In my docker container I run the following command to install the lib pcap: apt-get install -y libpcap-dev When I run apt list --installed I see this weird output:
libpcap-dev/oldstable,now 1.8.1-6 amd64 [installed]
libpcap0.8-dev/oldstable,now 1.8.1-6 amd64 [installed,automatic]
libpcap0.8/oldstable,now 1.8.1-6 amd64 [installed,automatic]
Does anyone know why it shows "oldstable" and then "now"? Also, how do I force the installation of the latest version of libpcap and libpcap-dev? I've been searching all over but can't figure it out. Thanks! P.S. I'm doing the installation inside a Docker container.
Vladimir (81 rep)
Aug 31, 2021, 08:12 PM • Last activity: Oct 29, 2024, 12:23 AM
0 votes
0 answers
336 views
How to detect undefined symbols in shared libraries or objects?
My Linux distribution (openSUSE Slowroll) accidentally shipped some incompatible libraries recently due to its experimental nature, lacking adequate automated testing using openQA, that caused the desktop environment and other programs like flatpak to crash on startup. The relevant errors: ``` Oct 1...
My Linux distribution (openSUSE Slowroll) accidentally shipped some incompatible libraries recently due to its experimental nature, lacking adequate automated testing using openQA, that caused the desktop environment and other programs like flatpak to crash on startup. The relevant errors:
Oct 10 09:05:09 suse-pc gnome-shell: JS ERROR: GLib.Error g-invoke-error-quark: Could not locate g_settings_bind_with_mapping_closures: 'g_settings_bind_with_mapping_closures': /lib64/libgio-2.0.so.0: undefined symbol: g_settings_bind_with_mapping_closures
Oct 14 03:07:36 suse-pc atomic-update: flatpak: symbol lookup error: /lib64/libgobject-2.0.so.0: undefined symbol: g_sort_array
I have a simple program I use to perform atomic updates, so I was wondering if there was a way to detect these undefined symbols in shared libraries/objects, so the faulty update can be discarded instead of being applied. Thanks! --- EDIT 1: I found an easy way to detect incompatible libraries was to print the version string for the program being tested:
pavin@suse-laptop:~/Downloads> gnome-control-center --version
gnome-control-center: symbol lookup error: /lib64/libgoa-backend-1.0.so.2: undefined symbol: adw_button_row_get_type, version LIBADWAITA_1_0
As @MarcusMüller said in the comments, this may not work always. So it is necessary to perform the check for a list of all essential programs you need.
Pavin Joseph (276 rep)
Oct 28, 2024, 08:57 AM • Last activity: Oct 28, 2024, 04:01 PM
0 votes
0 answers
39 views
How to select specific python library for an executable?
I have an executable which loads `/lib64/libpython3.so` at runtime. (I am on fedora 40 right now). As far as I can tell this library loads my default python version installed, currently this links to `libpython3.12.so.1.0`. The binary I am trying to execute does not like this new version though, so...
I have an executable which loads /lib64/libpython3.so at runtime. (I am on fedora 40 right now). As far as I can tell this library loads my default python version installed, currently this links to libpython3.12.so.1.0. The binary I am trying to execute does not like this new version though, so I have to run it on python 3.9. I can install an old interpreter via dnf install python3.9, however it does not ship with the top level libpython3.so (this is another package python3-libs). I can install usr/bin/python3 via alternatives however I am unsure on how to achieve the same thing for the library. Any ideas how to get this working? I also tried conda but this does not work either.
milck (171 rep)
Oct 4, 2024, 12:46 PM • Last activity: Oct 4, 2024, 03:59 PM
0 votes
0 answers
55 views
Cannot find mqic library when compiling Mqueue-sending C program
On our linux dev server for an application at work, we have an in-house C program called sendFile to, well, send files to the Mqueue. The program has seemingly not been changed since its creation in 2011 and works well enough as is, but I recently tried to add something to it (a 3rd queue definition...
On our linux dev server for an application at work, we have an in-house C program called sendFile to, well, send files to the Mqueue. The program has seemingly not been changed since its creation in 2011 and works well enough as is, but I recently tried to add something to it (a 3rd queue definition), and ran into issues when trying to compile it. The compiling command, which I assembled from the makefile, is as follows : gcc -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer sendFile.c -o sendFile -I/opt/mqm/inc -L/opt/mqm/lib/ -lmqic The last part, -lmqic, is what's causing issues. Specifically, I get this : /bin/ld: skipping incompatible /opt/mqm/lib//libmqic.so when searching for -lmqic /bin/ld: skipping incompatible /usr/lib/gcc/x86_64-redhat-linux/8/../../../libmqic.so when searching for -lmqic /bin/ld: skipping incompatible //lib/libmqic.so when searching for -lmqic /bin/ld: skipping incompatible //usr/lib/libmqic.so when searching for -lmqic /bin/ld: cannot find -lmqic collect2: error: ld returned 1 exit status And when I remove that argument, I get errors due to undefined reference to MQOPEN, MQCONN, MQCLOSE, etc. (functions of the mqic library, I presume). Per the ldd command, I was able to see which libraries are used by the program : linux-vdso.so.1 (0x00007ffcd63e9000) libmqic.so => /opt/mqm/lib64/libmqic.so (0x00007faf14597000) libc.so.6 => /usr/lib64/libc.so.6 (0x00007faf141d2000) libmqe.so => /opt/mqm/lib64/libmqe.so (0x00007faf135f6000) libdl.so.2 => /usr/lib64/libdl.so.2 (0x00007faf133f2000) libm.so.6 => /usr/lib64/libm.so.6 (0x00007faf13070000) /lib64/ld-linux-x86-64.so.2 (0x00007faf1479b000) librt.so.1 => /usr/lib64/librt.so.1 (0x00007faf12e68000) libstdc++.so.6 => /usr/lib64/libstdc++.so.6 (0x00007faf12ad3000) libpthread.so.0 => /usr/lib64/libpthread.so.0 (0x00007faf128b3000) libgcc_s.so.1 => /usr/lib64/libgcc_s.so.1 (0x00007faf1269b000) The /opt/mqm/lib64/libmqic.so library seems to be exactly what -lmqic refers to, and does exist on the server, so I'm rather puzzled as to why the compiler somehow can't find it. I did try to yum install mqic (in case the version on the server is incompatible as the error messages seem to suggest), but it didn't seem to exist under that name (though maybe I need to name it differently). Thanks in advance for any help! It's likely a very easy solution, and I'll be glad to be the fool if so.
Gael L (131 rep)
Sep 3, 2024, 06:27 PM
Showing page 1 of 20 total questions