1

I am trying to figure out how to handle the lack of dependency resolution in Slackware.

I installed Gnumeric from slackware.pkgs.org, but it won't run with a number of

** (gnumeric:10645): CRITICAL **: go_conf_[whatever]: assertion 'parent || key' failed

errors and eventually

gnumeric: symbol lookup error: /usr/lib64/libspreadsheet-1.12.34.so: undefined symbol: gtk_widget_path_iter_set_object_name

According to ldd, no useful shared libraries are missing (to be sure I checked the output of ldd with ls). However, two symbols are undefined :

$ ldd -r /usr/bin/gnumeric
[…]
undefined symbol: gtk_widget_path_iter_set_object_name  (/usr/lib64/libgoffice-0.10.so.10)
undefined symbol: gtk_widget_path_iter_set_object_name  (/usr/lib64/libspreadsheet-1.12.34.so)

I don't see any missing library if I run ldd on those two libs, but indeed I find a large number of missing symbols :

$ nm -D /usr/lib64/libgoffice-0.10.so.10|grep U|wc -l
1253
$ nm -D /usr/lib64/libspreadsheet-1.12.34.so|grep U|wc -l
2234

Are there still some package missing, or do some installed package to be upgraded ? (I'm guessing gtk+3) And how do I find this out ?

NB : I am not interested (yet) in automated tools to resolve dependencies (e.g. slapt-get or switching to Salix).

NB2 : FWIW, I managed to get Gnumeric working by installing the gnumeric and goffice packages provided by another contributor on slackware.pkgs.org, but obviously the generic question about how to find out what is missing and how to solve dependencies without testing all available packages combinations remains.

0

There are a couple of ways to do it.

1) pkgs.org has a list of all required dependencies for a given package in the "Requres" section.

2) Download the source and compile it manually. The ./configure or make will usually will flag missing libraries. A quick google search will usually point you to the library source.

Your Answer

By clicking "Post Your Answer", you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.