Странная ошибка GLib в результате pkg-config
Ubuntu 18.04 свежий установлен.
$ pkg-config --list-all 2>&1 | grep -A2 -B2 GLib
(pkg-config:31662): GLib-CRITICAL **: 06:08:21.279: g_string_insert_len: assertion 'len == 0 || val != NULL' failed
Что это, черт подери, такое? Это то, что нам нужно исправить? Это происходит каждый раз, когда я использую pkg-config
У меня была ошибка GLib во время установки. Но система как-то полезна. Больше похоже на проблему GLib. Как мы можем это исправить? И где проблема на самом деле?
обновить в соответствии с @N0rbert
#dpkg --verify
Не приводит к каким-либо связанным изменениям файлов, только некоторые распространенные файлы gnome для настройки xml и conf файлов. Установите libglib2.0-dev
тоже не помогает. Та же ошибка появляется после pkg-config --list-all
Переустановите с --reinstall libglib2.0-0 libglib2.0-bin libglib2.0-data
тоже не помогает. Ну, находка такая же, как и в репо, поэтому я не ожидаю, что это что-то изменит.
1 ответ
1. Проверьте целостность системы
я не вижу GLib-CRITICAL
сообщения в моих системах, поэтому, если вы не уверены, переустановите соответствующие пакеты с помощью:
sudo apt-get install --reinstall libglib2.0-0 libglib2.0-bin libglib2.0-data
Если проблема сохраняется, проверьте целостность системы с помощью:
sudo dpkg --verify
или дебовсы:
sudo apt-get install debsums
sudo debsums --all --changed
и переустановите пакеты с возможными поврежденными / пропущенными / измененными файлами.
2. Установите пакеты с *.pc
файлы
Около *.pc
файлы. Если вы посетите поиск по https://packages.ubuntu.com/ и оцените поиск *.pc
файлы внутри пакетов вы увидите длинный список связанных пакетов и файлов:
Поэтому вам нужно установить несколько связанных с ним dev-пакетов.
Хотя бы один libglib2.0-dev
с glib-2.0.pc
:
sudo apt-get install libglib2.0-dev
и вы получите что-то вроде:
$ pkg-config --list-all | grep -A2 -B2 GLib iso-codes iso-codes - ISO country, language, script and currency codes and translations caja-python Caja-Python - Caja-Python Components gobject-2.0 GObject - GLib Type, Object, Parameter and Signal Library gmodule-export-2.0 GModule - Dynamic module loader for GLib libpcreposix libpcreposix - PCREPosix - Posix compatible interface to libpcre geoclue-2.0 Geoclue - The Geoinformation Service -- adwaita-icon-theme gnome-icon-theme - A collection of icons used as the basis for GNOME themes libpcre libpcre - PCRE - Perl compatible regular expressions C library with 8 bit character support glib-2.0 GLib - C Utility Library mate-keybindings mate-keybindings - Keybindings configuration for MATE applications gmodule-2.0 GModule - Dynamic module loader for GLib gnome-system-tools gst - Gnome System Tools gthread-2.0 GThread - Thread support for GLib caja-sendto caja-sendto - Extend caja-sendto through plugins xbitmaps X bitmaps - Bitmaps that are shared between X applications -- libpcre32 libpcre32 - PCRE - Perl compatible regular expressions C library with 32 bit character support xkeyboard-config XKeyboardConfig - X Keyboard configuration data gmodule-no-export-2.0 GModule - Dynamic module loader for GLib xkbcomp xkbcomp - XKB keymap compiler
(протестировано на чистой виртуальной машине Ubuntu 18.04.2 LTS)
Примечание. Debian и Ubuntu не являются дистрибутивами GNU/Linux на основе исходного кода, т.е. они не являются Gentoo или Funtoo. Предполагается, что для последних предустановлены пакеты включений, пакеты для разработки и инструменты, но для Debian это не ожидается.