web-dev-qa-db-ja.com

別の(解決不可能な)「古いglib」問題

退役軍人はドリルを知っていることは確かですが(この質問は10億回も聞かれているようです)、ソースからソフトウェア(./configure)をインストールしているときにこのエラーが表示されます。

*** 'pkg-config --modversion glib-2.0' returned 2.48.1, but GLIB (2.48.0)
*** was found! If pkg-config was correct, then it is best
*** to remove the old version of GLib. You may also be able to fix the error
*** by modifying your LD_LIBRARY_PATH enviroment variable, or by editing
*** /etc/ld.so.conf. Make sure you have run ldconfig if that is
*** required on your system.
*** If pkg-config was wrong, set the environment variable PKG_CONFIG_PATH
*** to point to the correct configuration files

そして、私は他のスレッドが役に立たないことを発見したすべての修正を試みました...私はすべての通常の提案されたPATH修正を試みました。

LD_LIBRARY_PATH=/usr/local/lib
PKG_CONFIG_PATH=/usr/lib/x86_64-linux-gnu/pkgconfig/
PKG_CONFIG_PATH=/usr/lib/pkgconfig/
PATH=/usr/local/bin:$PATH
ACLOCAL_PATH=/usr/local/share/aclocal/
export CPATH=/usr/local/include

そして、オプションがあるすべての可能な組み合わせ。私の(実際の?)glibがどこに隠れているのか、問題のプログラム(またはpkg-config)をどのように指すかを把握するために実行できる診断があると思いますが、それがどうなるかはわかりません。

同様の性質の別の質問で提案されたコマンドからの出力:

find /usr/ -iname "*glib*.pc"収量

find: ‘/usr/share/doc/google-chrome-stable’: Permission denied
/usr/lib/pkgconfig/glib-2.0.pc
/usr/lib/x86_64-linux-gnu/pkgconfig/spice-client-glib-2.0.pc

およびdpkg -l libglib2.0-devの収量

Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name           Version      Architecture Description
+++-==============-============-============-=================================
un  libglib2.0-dev <none>       <none>       (no description available)

参考のために、私はこことここから解決策を試しました(2番目のスレッドからかなり自由にそのWordを使用して):

古いGLIBエラーの解決方法

jhbuildを使用して「pygobject」をインストール中に古いGLIBエラーを解決する方法

そしてここ:

https://stackoverflow.com/questions/11228173/how-to-find-where-older-version-of-glib-has-been-installed

そしてこことここ:

http://www.linuxquestions.org/questions/linux-newbie-8/configure-requested- 'glib-2-0-%3D-2-32-0'-but-version- of-glib-uninstalled-is-2-29-2-a-4175442396 /

http://ubuntuforums.org/showthread.php?t=2002738

Ubuntu 16.04、参考のために...私は歩き回っていますが、glibをアンインストールして再インストールすることは無意味です(システムはそれに大きく依存しています)が、他のすべては今のところうまく機能しています...私はただ苦労していますこの新しい男をインストールします。ありがとう!

7
Ronald

dpkgコマンドはすべてをキャッチするわけではありません。代わりに次のコマンドを試してください。

$ dpkg -l libglib2*
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name              Version       Architecture  Description
+++-=================-=============-=============-=======================================
ii  libglib2.0-0:AMD6 2.48.2-0ubunt AMD64         GLib library of C routines
ii  libglib2.0-bin    2.48.2-0ubunt AMD64         Programs for the GLib library
ii  libglib2.0-data   2.48.2-0ubunt all           Common files for GLib library

私のUbuntu 16.04は私のニーズに完全に対応していますが、あなたに似たglibエラーがあるようです。ただし、glibを再インストールする必要がないため、それらを無視します。

$ Sudo apt install libglib2.0
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Note, selecting 'libglib2.0-0-refdbg' for regex 'libglib2.0'
Note, selecting 'libglib2.0-cil-dev' for regex 'libglib2.0'
Note, selecting 'libglib2.0-tests' for regex 'libglib2.0'
Note, selecting 'libglib2.0-0-dbg' for regex 'libglib2.0'
Note, selecting 'libglib2.0-bin' for regex 'libglib2.0'
Note, selecting 'libglib2.0-cil' for regex 'libglib2.0'
Note, selecting 'libglib2.0-dbg' for regex 'libglib2.0'
Note, selecting 'libglib2.0-dev' for regex 'libglib2.0'
Note, selecting 'libglib2.0-doc' for regex 'libglib2.0'
Note, selecting 'libglib2.0-data' for regex 'libglib2.0'
Note, selecting 'libglib2.0-0' for regex 'libglib2.0'
libglib2.0-0 is already the newest version (2.48.2-0ubuntu1).
libglib2.0-data is already the newest version (2.48.2-0ubuntu1).
libglib2.0-bin is already the newest version (2.48.2-0ubuntu1).
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help resolve the situation:

The following packages have unmet dependencies:
 libglib2.0-0-dbg : Depends: libglib2.0-0 (= 2.48.0-1ubuntu4) but 2.48.2-0ubuntu1 is to be installed
 libglib2.0-0-refdbg : Depends: libglib2.0-0 (= 2.48.0-1ubuntu4) but 2.48.2-0ubuntu1 is to be installed
 libglib2.0-dev : Depends: libglib2.0-0 (= 2.48.0-1ubuntu4) but 2.48.2-0ubuntu1 is to be installed
                  Depends: libglib2.0-bin (= 2.48.0-1ubuntu4)
                  Depends: zlib1g-dev but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

メッセージには、最新バージョンが既にインストールされているというメッセージが表示されますが、誤ったバージョンがインストールされているというメッセージが表示されます。最後に、壊れたパッケージがあります。

3