Компиляция звездочки на Debian: не может найти 'ptlib-конфигурацию'

[114645] Самый точный метод, который мне известен, это использование вывода системного вызова lstat(). В частности, поле st_dev. Есть утилита командной строки, stat(1), с помощью которой можно посмотреть эту информацию. Например, вывод "stat /etc/issue" на мой ноутбук:[12136]Обратите внимание на третью строку, первое поле "Device". Здесь перечисляется 801h. Это значение можно разделить на два байта, 8 и 1. Первый байт называется мажорным числом, второй байт - минорным. Итак, следующий шаг - выяснить, что такое устройство мажор 8, минор 1.[12137]Я нахожу наиболее быстрым обращение к разделам /proc/. В моем случае разделы /proc/ имеют содержимое:[12138]Из этого вывода довольно ясно, что мажор 8, минор 1 - это sda1. Мы можем подтвердить это с помощью ls -l /dev/sda1 [12139]Обратите внимание на 8, 1 перед отметкой даты.[12140]Важно понять/помнить, что имя файла устройства типа /dev/sda1 - это только метка. Мажорное и минорное числа являются значительными, важными значениями файла устройства. Если вам интересно, обратите внимание на утилиту mknod(1), используемую для создания файлов устройств. Я могу создать новую запись в /dev под названием aardvark с major 8, minor 18 со следующим синтаксисом:[12141]Затем я могу легко смонтировать ее:[12142]и, если мы посмотрим на вывод команды mount или на содержимое /proc/mounts и увидим:[12143]df -h shows:[12144].... В любом случае, смысл всего этого в том, чтобы проиллюстрировать, что важными деталями для идентификации блочного устройства являются основные и второстепенные номера, а не метка файла устройства, и что использование системного вызова lstat() является лучшим способом запроса этих значений.[12145]В качестве последнего комментария, я просто перечитал ваш вопрос, чтобы убедиться, что я на него ответил, и понял, что вы спрашиваете, какая метка исходного устройства будет отображаться в /proc/mounts для монтирования при привязке. Это будет тот же самый ярлык исходного устройства, который использовался в оригинальном вызове mount(2) для точки монтирования файловой системы. Возможно, поможет пример:[12146]У меня есть /dev/sdb2 и /dev/aardvark (то же самое, что и выше). Оба они мажорные 8, минорные 18. Обратите внимание, я буду монтировать одну и ту же файловую систему дважды. Я делаю следующее:[12147]Обратите внимание, что я делаю каталог somedir в /mnt1. Но так как в /mnt1 и /mnt2 монтируются одни и те же файловые системы, то с помощью /mnt2 также будет доступен somedir.[12148]Теперь, если мы проверим /proc/mounts, то увидим:[12149]Метка исходного устройства в /foo/... bind mounts совпадает со значением, изначально указанным в вызове монтирования файловой системы (2). Помните, что /dev/aardvark и /dev/sdb2 в моем примере - одно и то же устройство. [12150] Я понимаю, что только что напечатал роман, и первая половина вообще не отвечает на ваш вопрос, но удалять его казалось таким расточительным занятием. Возможно, это поможет кому-то другому.[12151]Удачи.[12152]P.S. Имейте в виду, что некоторые файловые системы основаны на сети - как NFS или CIFS - или являются виртуальными - как procfs или sysfs и не имеют устройства с исходным блоком. Я не знаю, что будет возвращено в качестве устройства на выходе статистики, только сколько это стоит.[114680].
1
09.01.2015, 00:35
4 ответа
install libpt-dev

export PTLIB_CONFIG=/usr/share/ptlib/make/ptlib-config

./configure

make
2
27.01.2020, 23:28

Вы можете использовать инструмент способного файла, чтобы определить, какие пакеты содержат данное имя файла:

$ sudo apt-get install apt-file
...
$ sudo apt-file update
...
$ apt-file search ptlib-config
libpt-dev: /usr/share/ptlib/make/ptlib-config

Вы должны также быть в состоянии восстановить все зависимости времени изготовления для данного пакета, бегая:

$ sudo apt-get build-dep $PACKAGE # where PACKAGE=asterisk in this case
1
27.01.2020, 23:28

Это сработало для меня, установите это перед запуском ./configure:

export PTLIB_CONFIG=/usr/lib/pkgconfig

Anf then:

./configure
1
27.01.2020, 23:28
install libpt-dev

export PTLIB_CONFIG=/usr/share/ptlib/make/ptlib-config

./configure
-1
27.01.2020, 23:28

Теги

Похожие вопросы