You are not logged in.
Hi there, this is my first time posting in these forums and I hope I'm in the right place.
I use the CLI tox client Toxic as a method for secure communication with friends etc. and I haven't encountered a problem with it before today. I'm not sure what happened but when I tried to run in it my terminal I received this error:
toxic: error while loading shared libraries: libsodium.so.10: cannot open shared object file: No such file or directoryI figured it was a problem with libsodium so I decided to reinstall it, but I still had the same problem. I replaced libsodium with libsodium-git and still the error persists.
The next course of action I tried was to reinstall Toxic from the AUR. I use the git package so I typed:
yaourt -S toxic-gitThe package didn't install however and I received this error when the machine tried to build the package:
Makefile:56: recipe for target 'global_commands.o' failed
make: *** [global_commands.o] Error 1
==> ERROR: A failure occurred in build().
Aborting...
==> ERROR: Makepkg was unable to build toxic-git.
==> Restart building toxic-git ? [y/N]
==> ----------------------------------Restarting the build returns the same error, and the regular toxic package also will not build.
I've been using Arch for a few months now, but I've never encountered a problem like this before. Does anyone know what I can do to get Toxic working again? Any help would be greatly appreciated, thanks! ![]()
Last edited by handles (2014-08-28 21:07:49)
Offline
libsodium was upgraded to version 0.7 on 2014-08-27 , and there appears to have been a so-name bump to libsodium.so.13 .
You'll have to rebuild everything from aur that uses libsodium against the new version.
Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.
clean chroot building not flexible enough ?
Try clean chroot manager by graysky
Online
libsodium was upgraded to version 0.7 on 2014-08-27 , and there appears to have been a so-name bump to libsodium.so.13 .
I did a quick check on my system and it would seem that the required libsodium.so.10 is missing, but libsodium.so.13 is present.
pkgfile -l libsodium
...
community/libsodium /usr/lib/
community/libsodium /usr/lib/libsodium.so
community/libsodium /usr/lib/libsodium.so.13
community/libsodium /usr/lib/libsodium.so.13.0.0
...Thanks for letting me about the version change.
You'll have to rebuild everything from aur that uses libsodium against the new version.
I've never had to rebuild a package against a new version of a library before, so I'm going to use this as a good learning opportunity. I spent a good hour and a half searching various Arch wiki pages and forums, but I don't know how to do this. Do I need to edit something in the PKGBUILD file when I go to download the package from the AUR?
The PKGBUILD file looks for toxic-git looks like this:
# Maintainer: Florian Hahn <flo@fhahn.com>
pkgname=toxic-git
pkgdesc='CLI client for tox, a Skype replacement that respects your privacy'
license=('GPL3')
pkgver=0.r1134.efe61e3
pkgrel=1
depends=('tox-git' 'ncurses' 'libconfig')
makedepends=('git')
conflicts=('toxic')
provides=('toxic')
arch=('i686' 'x86_64')
url=('http://tox.im')
source=('git+https://github.com/Tox/toxic.git')
md5sums=('SKIP')
optdepends=(
'openal: audio notifications'
'freealut: audio notifications'
)
_gitname=toxic
pkgver() {
cd "${srcdir}/${_gitname}"
printf "0.r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)"
}
build() {
cd "${srcdir}/${_gitname}/build"
make PREFIX=/usr
}
package() {
cd "${srcdir}/${_gitname}/build"
make PREFIX=/usr DESTDIR="${pkgdir}" install
}
PKGBUILD (END)I don't see any references to libsodium within this file though, so I'm not really certain what I should be doing to get to compile against the new libsodium v0.7.0 .
If anyone could point me in the right direction, I would really greatly appreciate it.
Last edited by handles (2014-08-28 20:57:56)
Offline
I don't seen any references to libsodium within this file though, so I'm not really certain what I should be doing to get to compile against the new libsodium v0.7.0 .
That's a correct observation, which suggests the problem is between libsodium and some dependency of toxic-git .
When an official package foo has a .so-name change, every official package that depends on foo will be rebuild aginst the new foo.
So the problem is likely to be with a dependency of toxic-git that's not in an official repo.
luckily toxic-git has only 1 non-official dependency, tox-git .
If you look at the tox-git AUR page or PKGBUILD, you will see libsodium is a dependency of tox-git.
Also tox-git has no unoffical dependencies.
The way to solve the issue is now clear :
rebuild tox-git
once that's done succesfully : rebuild toxic-git .
Keep in mind that figuring out which packages need a rebuild to solve this kind of problem is often much harder.
Last edited by Lone_Wolf (2014-08-28 19:17:50)
Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.
clean chroot building not flexible enough ?
Try clean chroot manager by graysky
Online
Thanks a lot! I rebuilt tox-git as suggested, then rebuilt toxic-git and the programme now works as expected. I really appreciate your help ![]()
Offline