>Комментарий в рамочку и носом тыкать адептов в бздшные реалии.# cd /usr/src/lib/libdevctl/
# svn log | head -40
------------------------------------------------------------------------
r306533 | jhb | 2016-10-01 00:05:47 +0200 (Sat, 01 Oct 2016) | 11 lines
MFC 305034: Implement 'devctl clear driver' to undo a previous 'set driver'.
Add a new 'clear driver' command for devctl along with the accompanying
ioctl and devctl_clear_driver() library routine to reset a device to
use a wildcard devclass instead of a fixed devclass. This can be used
to undo a previous 'set driver' command. After the device's name has
been reset to permit wildcard names, it is reprobed so that it can
attach to newly-available (to it) device drivers.
Sponsored by: Chelsio Communications
Внимательно читаем:
with the accompanying ioctl and devctl_clear_driver()
И смотрим сообщение при компиляции:
/usr/local/llvm39/bin/clang -O2 -pipe -DNDEBUG -std=gnu99 -fstack-protector-strong -Qunused-arguments -o devctl devctl.o -ldevctl
devctl.o: In function `clear_driver':
/usr/src/usr.sbin/devctl/devctl.c:(.text+0x611): undefined reference to `devctl_clear_driver'
Изя обновил исходный текст в стабильной ветке и решил прекомпилировать систему,
наткнулся что в установленной библиотеке нет одной функции, и запутался.
Это банальщина разработки, решается на раз, но не все обязаны это знать, люди разных профессий и ваще.
Стандартная перекомпиляция производиться через
# cd /usr/src/
# make buildworld -j12
# make installworld
В этом случае сначала собираются новые библиотеки, и уже с новыми, во временном дереве объектных файлов, проиисходит линковка приложений.
Но, при небольших изменениях возможно просто перекомпилировать библиотеку (библиотеки), установить новую версию в системное дерево (и чудо, все будет работать), и пересобрать отдельное системное приложение.
Мальчик (или девочка), ты хоть раз в жизни что-то разрабатывал-компилировал, ну хоть hello_world.c?