Сделал так:
FreeBSD 8.2
VirtualBox 4.0.12 (Windows XP внутри) стартует автономно в headless режиме при простое кушает разве что только память (ОЗУ виртуальной машины + объем памяти видеоадаптера виртуальной машины)
===
1) в настройках виртуальной машины добавляем USB-фильтр на наш принтер, в результате чего принтер обнаруживается Windows XP. Устанавливаем драйвер и принтер даём в доступ. Можно ещё установить средства печати для unix из комплекта Windows XP и принтер будет доступен через LPD-печать.
2) скачиваем с сайта Canon исходники драйверов для Linux два пакета cndrvcups-common-1.60 и cndrvcups-capt-1.60 у меня, например.
3) компилируем и устанавливаем обычным путём из пакета cndrvcups-common-1.60: make all install clean
4) компилируем и устанавливаем обычным путём из пакета cndrvcups-capt-1.60: make all install clean. Фильтры установились не в /usr/local/libexec/cups, а в /usr/local/lib/cups, но это несложно ручками перенести. Ковыряние конфигуратора, как мне показалось, может занять больше времени.
5) из пакета cndrvcups-capt-1.60 ещё нужно будет ручками скопировать фильтр libs/captfilter в каталог /usr/local/libexec/cups/filter/. Права доступа запуска на фильтр, при необходимости, устанавливаем chmod +x captfilter
6) в процессе установки в каталог /usr/local/share/cups/model также скопировались PPD-файлы драйверов на целое семейство принтеров Canon LBP. Через систему управления CUPS -
http://localhost:631 добавляем новый принтер, например, через LPD, и при запросе драйвера указываем нужный PPD-файл.
В результате есть пусть и не самая идеальная, но работающая цепочка:
документ -> фильтры CUPS -> фильтры CUPS Canon -> сеть -> менеджер принтера Canon принтера -> принтер.
Собственно, поскольку менеджер принтера не имеет ни исходников, ни бинарника под FreeBSD, а версия бинарника под Linux требует libcups.so.2, который не удалось подобрать, существует именно такое решение. Вместо виртуальной машины с Windows, конечно, может использоваться как виртуальная машина с Linux, на которой драйвер смог прижиться
, так и отдельно стоящий компьютер. В домашних условиях виртуалка как-то предпочтительней оказалась.
P.S. чтобы не заморачиваться на выскакивающий монитор печати из .inf файла драйвера под Windows перед установкой были закомментированы все CNAB*.EXE файлы, кроме файла CNAB4UN.EXE, необходимый для операции деинсталляции. Мониторов печати нет - документы печатаются.