未定義シンボル:依存関係解決を計算する方法は?

未定義シンボル:依存関係解決を計算する方法は?

Slackwareの依存関係解決の欠如を処理する方法を見つけようとしています。

slackware.pkgs.orgからGnumericをインストールしましたが、複数を実行することはできません。

** (g​​numeric:10645): キー **: go_conf_[何でも]: アサーション '親キー失敗 ||

エラーが発生し、最終的に

gnumeric: シンボル検索エラー: /usr/lib64/libspreadsheet-1.12.34.so: 未定義シンボル: gtk_widget_path_iter_set_object_name

によると、役に立つ共有ライブラリがありません(withの出力をldd確認してください)。ただし、2 つの記号は定義されていません。lddls

$ 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)

これら2つのライブラリで実行すると、見つからないライブラリは表示されませんが、ldd実際には欠落しているシンボルがたくさん見つかります。

$ 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

一部のパッケージがまだ欠落しているか、インストールされている一部のパッケージをアップグレードする必要がありますか?(私の考えにはgtk+3らしい)これをどのように発見できますか?

slapt-get注:私は(まだ)依存関係を解決するための自動化されたツール(Salixへの移行など)には興味がありません。

gnumericNB2:FWIW、slackware.pkgs.orgから他の貢献者から提供され、パッケージをインストールしてGnumericを動作させることができましたが、goffice利用可能なすべてのソフトウェアをテストしない限り、欠落しているものと依存関係を解決する方法を理解する方法がないこと同じです。パッケージの組み合わせの問題。

ベストアンサー1

これを行う方法はいくつかあります。

1)pkgs.orgの「Requres」セクションには、そのパッケージに必要なすべての依存関係がリストされています。

2) ソースコードをダウンロードし、手動でコンパイルします。 ./configure または make は通常、欠落しているライブラリにフラグを立てます。クイック Google 検索は通常、ライブラリのソースにリンクされます。

おすすめ記事