Эта ошибка обычно обнаруживается, если пакет не устанавливал правильно. Что делает
dpkg -l bluez
показать? Это обычно происходит двумя способами
Установка была прервана.
Существует что-то не так с {пред/сообщение} - сценарий блюза установки (или подобно).
Насколько первый идет, Вы знаете о прерванной установке? Если это - проблема, переустановка может устранить проблему.
Если последний, необходимо все еще сначала попытаться переустановить. Однако как последнее прибежище Вам, вероятно, придется вручную отредактировать {пред/сообщение} - {устанавливают/удаляют} сценарии, в зависимости от того, где проблема, и хотите ли Вы попытаться заставить ее устанавливать правильно или просто хотеть удалить ее полностью. Обычно проблема состоит в том, что что-то в сценариях перестало работать и вызывает dpkg к ошибке, таким образом, решение состоит в том, чтобы вырезать ту вещь. Все такие сценарии расположены в /var/lib/dpkg/info
. Искать bluez.postinst
или подобный. NB: Если это - проблема, это может быть ошибка, поэтому удостоверьтесь, что зарегистрировали отчет об ошибках с Системой отслеживания ошибок Debian.
$ man 2 read
...
READ(2) Linux Programmer's Manual READ(2)
NAME
read - read from a file descriptor
SYNOPSIS
#include <unistd.h>
...
Если Вы будете искать в заголовочных файлах в Вашей системе, то Вы найдете, в каком заголовочном файле функция объявляется в Вашей системе. Это может быть трудно как иногда, функция объявляется через сложный макрос. И это только скажет Вам, какой заголовочный файл объявляет функцию в Вашей системе; это может даже быть заголовочным файлом, который Вы не можете включать непосредственно, потому что ему нужны другие заголовки, чтобы быть на первом месте.
Единственный безопасный способ найти, что заголовочный файл включать состоит в том, чтобы консультироваться с документацией библиотеки, которая обеспечивает функцию. Для стандартной библиотеки можно консультироваться:
man 3 function_name
или man 2 function_name
— различие между 2 и 3 является в основном историческим), или другая документация (например, GNU libc руководство по Linux).
2
вman 2 read
то, потому что это - системный вызов, много библиотечных функций будут в разделе 3 из руководства. Можно использоватьman -k
илиapropos
получить список команд/вызовов/файлов/API, имя которых или описание включают слово и в каком разделе (разделах) они описаны. – dmckee --- ex-moderator kitten 21.02.2012, 01:00