You are not logged in.
Hello! In May I made a post talking about any pacman operation breaking symlink in my /usr/lib folder. Awesome people guided me to solution it but I think we missed something. (https://bbs.archlinux.org/viewtopic.php?id=296223)
I want to start off by saying that after any pacman operation in terminal I see these two lines:
ldconfig: /usr/lib32/libdrm_amdgpu.so.1 is not a symbolic link
ldconfig: /usr/lib/libdrm_amdgpu.so.1 is not a symbolic linkThey're printed before ":: Running post-transaction hooks...", but they did nothing
Today however after running pacman -Syu and rebooting sddm failed to load, I checked my /usr/lib again, and found out that symlink was broken once again.
I did not find a wiki page on ldconfig, nor does my system have a man page on it. So I searched the internet and found that ldconfig stores it's configuration data in /etc/ld.so.conf, or in my case it includes /etc/ld.so.conf.d/*. There were a few files:
>cd /etc/ld.so.conf.d
>for file in *; do
echo "\n$file"
cat "$file"
done
hip-runtime-amd.conf
/opt/rocm/hip/lib
lib32-glibc.conf
/usr/lib32
rocm.conf
/opt/rocm/libNo mention of amdgpu. Then I found that ldconfig has cache.
>ldconfig -p | grep amdgpu
libomptarget.rtl.amdgpu.so.18.1 (libc6,x86-64) => /usr/lib/libomptarget.rtl.amdgpu.so.18.1
libomptarget.rtl.amdgpu.so (libc6,x86-64) => /usr/lib/libomptarget.rtl.amdgpu.so
libdrm_amdgpu.so.1 (libc6,x86-64) => /usr/lib/libdrm_amdgpu.so.1
libdrm_amdgpu.so.1 (libc6) => /usr/lib32/libdrm_amdgpu.so.1
libdrm_amdgpu.so (libc6,x86-64) => /usr/lib/libdrm_amdgpu.so
libdrm_amdgpu.so (libc6) => /usr/lib32/libdrm_amdgpu.soVerbose mode prints more info:
>ldconfig -v | grep amdgpu
ldconfig: Can't stat /opt/rocm/hip/lib: No such file or directory
ldconfig: Path `/usr/lib64' given more than once
(from <builtin>:0 and <builtin>:0)
ldconfig: Can't stat /usr/libx32: No such file or directory
ldconfig: /usr/lib32/libdrm_amdgpu.so.1 is not a symbolic link
libdrm_amdgpu.so.1 -> libdrm_amdpro.so.1.0.0
libomptarget.rtl.amdgpu.so.18.1 -> libomptarget.rtl.amdgpu.so.18.1
ldconfig: /usr/lib/libdrm_amdgpu.so.1 is not a symbolic link
libdrm_amdgpu.so.1 -> libdrm_amdpro.so.1.0.0
ldconfig: Can't create temporary cache file /etc/ld.so.cache~: Permission deniedSadly I can't find where to configure ldconfig so it doesn't break my symlink. Any help would be greatly appreciated
Last edited by ilia21 (2024-08-30 14:12:56)
Offline
What does `pacman -Qikk libdrm` give you?
Edit: Ok, I read the previous thread, it looks like you have amdgpu pro for some reason? Why, and how did you set it up?
Last edited by Scimmia (2024-08-30 13:23:48)
Offline
Hello! Thank you for your reply
looks like you have amdgpu pro for some reason? Why, and how did you set it up?
I tried to install proprietary driver because I had some issues in minecraft, they're fixed long ago, and I don't need driver anymore.
I used this page https://wiki.archlinux.org/title/AMDGPU … stallation as a guide and installed amdgpu-pro-oglp from aur. Here's pacman log from that day if it is relevant:
[2024-05-15T18:23:50+0300] [PACMAN] Running 'pacman -U --config /etc/pacman.conf -- /home/ilia21/.cache/yay/amdgpu-pro-installer/amdgpu-pro-oglp-23.40_1741713-1-x86_64.pkg.tar.zst'
[2024-05-15T18:23:51+0300] [ALPM] transaction started
[2024-05-15T18:23:51+0300] [ALPM] installed amdgpu-pro-oglp (23.40_1741713-1)
[2024-05-15T18:23:51+0300] [ALPM] transaction completed
[2024-05-15T18:23:51+0300] [ALPM] running '30-systemd-update.hook'...
[2024-05-15T18:23:51+0300] [PACMAN] Running 'pacman -D --asexplicit -q --config /etc/pacman.conf -- amdgpu-pro-oglp'Right now this package is deleted and I use open source drivers
Offline
How about `pacman -Qo /usr/lib/*amdpro*`?
Offline
❯ pacman -Qo /usr/lib/*amdpro*
error: No package owns /usr/lib/libdrm_amdpro.so.1
error: No package owns /usr/lib/libdrm_amdpro.so.1.0.0Offline
Those files shouldn't be there, especially untracked. I would suggest running lostfiles and clean up the system.
But for the current problem, I'm guessing deleting those and reinstalling libdrm will take care of it.
Offline
Thank you for quick reply. I renamed them by adding .bak to each file, I also did the same for the files in /usr/lib32. Reinstalled libdrm, (by running it with -S, there are a lot of dependencies, and I can't delete it) and I'm still getting this:
ldconfig: /usr/lib32/libdrm_amdgpu.so.1 is not a symbolic linkEdit:
looks like my symlinks in /usr/lib broke again:
❯ ls /usr/lib32/ | grep amdpro
libdrm_amdpro.so.1.0.0.bak
❯ ls /usr/lib/ | grep amdpro
libdrm_amdgpu.so.1 -> libdrm_amdpro.so.1.0.0.bak
libdrm_amdpro.so.1.0.0.bak
❯ ls /usr/lib/libdrm_amdgpu*
/usr/lib/libdrm_amdgpu.so -> libdrm_amdgpu.so.1
/usr/lib/libdrm_amdgpu.so.1 -> libdrm_amdpro.so.1.0.0.bak
/usr/lib/libdrm_amdgpu.so.1.123.0I will relink manually right now, but posting just in case it is relevant
Last edited by ilia21 (2024-08-30 14:07:47)
Offline
Nobody said to rename them in place.
Offline
I'm so sorry for not listening to your instruction. Deleting them solved the issue, thank you, very much.
I did this just so I can restore them if something breaks.
Once again sorry and thank you for helping me.
Offline