Можно ли переделать PPD файл принтера так чтобы появилась возможность нормальной двусторонней печати, как в оффтопике?
Очень не хватает этой функции, так как приходится периодически много печатать с двух сторон, а использовать только ради этого мелкомягкие окна категорически не хочется. *NO*
Может кто уже пытался переделывать драйвера принтера?
Или нужно идти дальше и переделывать сам Gutenprint?
Переделка драйвера принтера Canon MP250/MP280
Попробовал собрать дрова из оверлея на замену гутенпринта, но не тут то было *DONT_KNOW* *SORRY*
[console]
USE="-mp280 mp230" emerge net-print/cnijfilter-drivers
...
x86_64-pc-linux-gnu-gcc -O2 -L../../401/libs_bin64 -Wl,-O1 -Wl,--as-needed -o cif bjferror.o bjfilter.o bjfimage.o bjfoption.o bjfpos.o bjfrcaccess.o getipc.o bjflist.o -lcnbpcmcm401 -lcnbpess401 -lm -ldl -ltiff -lpng -lcnbpcnclapi401 -lcnbpcnclbjcmd401 -lcnbpcnclui401 -lpopt
/usr/lib/gcc/x86_64-pc-linux-gnu/5.4.0/../../../../x86_64-pc-linux-gnu/bin/ld: cannot find -lcnbpcmcm401
/usr/lib/gcc/x86_64-pc-linux-gnu/5.4.0/../../../../x86_64-pc-linux-gnu/bin/ld: cannot find -lcnbpess401
collect2: ошибка: выполнение ld завершилось с кодом возврата 1
make[2]: *** [Makefile:361: cif] Ошибка 1
make[2]: выход из каталога «/var/tmp/portage/net-print/cnijfilter-drivers-3.80/work/cnijfilter-source-3.80-1/mp230/cnijfilter/src»
make[1]: *** [Makefile:355: all-recursive] Ошибка 1
make[1]: выход из каталога «/var/tmp/portage/net-print/cnijfilter-drivers-3.80/work/cnijfilter-source-3.80-1/mp230/cnijfilter»
make: *** [Makefile:296: all] Ошибка 2
* ERROR: net-print/cnijfilter-drivers-3.80::gentoo-zh failed (compile phase):
[/console]
Вот эти файлы
[console]server cnijfilter-drivers # ls /tmp/cnijfilter-source-3.80-1/401/libs_bin64/
libcnbpcmcm401.so libcnbpcnclbjcmd401.so libcnbpess401.so
libcnbpcmcm401.so.8.10.1 libcnbpcnclbjcmd401.so.3.3.0 libcnbpess401.so.4.1.3
libcnbpcnclapi401.so libcnbpcnclui401.so libcnbpo401.so
libcnbpcnclapi401.so.3.8.0 libcnbpcnclui401.so.3.8.0 libcnbpo401.so.1.0.1[/console]
Makefile.am
Показать
INCLUDES = \
-I$(top_srcdir)/include/cncl \
-I$(top_srcdir)/include/misc
bin_PROGRAMS = cif
cif_SOURCES = \
bjferror.c \
bjferror.h \
bjfilter.c \
bjfilter.h \
bjfimage.c \
bjfimage.h \
bjfoption.c \
bjfoption.h \
bjfpos.c \
bjfpos.h \
bjipc.h \
bjfrcaccess.c \
bjfrcaccess.h \
bjfversion.h \
getipc.c \
bjflist.c \
uitypes.h
cif_LDADD = -lcnbpcmcm@CNCL_LIB_ID@ -lcnbpess@CNCL_LIB_ID@ -lm -ldl -ltiff -lpng\
-lcnbpcnclapi@CNCL_LIB_ID@ -lcnbpcnclbjcmd@CNCL_LIB_ID@ -lcnbpcnclui@CNCL_LIB_ID@ -lpopt
cif_LDFLAGS = -L../../@CNCL_LIB_ID@/libs_bin@ARC@
Замена -lcnbpcmcm на -libcnbpcmcm и т.д. в файле Makefile.am не помогла
/tmp/cnijfilter-source-3.80-1/401/libs_bin64/
-L../../401/libs_bin64
выход из каталога «/var/tmp/portage/net-print/cnijfilter-drivers-3.80/work/cnijfilter-source-3.80-1/mp230/cnijfilter/src»
Все с путями нормально? Он при сборке ожидает библиотеки на 2 уровня выше, но по приведенному фрагменту этого не видно... Сверьте пути.
/tmp/cnijfilter-source-3.80-1/401/libs_bin64/
-L../../401/libs_bin64
выход из каталога «/var/tmp/portage/net-print/cnijfilter-drivers-3.80/work/cnijfilter-source-3.80-1/mp230/cnijfilter/src»
Все с путями нормально? Он при сборке ожидает библиотеки на 2 уровня выше, но по приведенному фрагменту этого не видно... Сверьте пути.
Первая строка - это вручную распакованные исходники чтобы отредактировать Makefile.am, но, как говорил выше, это не помогло (заменил в нём -lcnbpcnclapi на -libcnbpcnclapi, где оно находит правильные имена файлов, непонятно)
заменил в нём -lcnbpcnclapi на -libcnbpcnclapi
не надо этого делать. Тут ведь вот какая штука...
0) исполняемый файл -- x86_64-pc-linux-gnu-gcc -- это компилятор gcc
1) -lcnbpcnclap -- это ключ "-l" и его параметр "cnbpcnclap"
2) ключ -l -- это указание прилинковать библиотеку
3) cnbpcnclap -- это имя библиотеки
4) чтобы из имени библиотеки получить имя файла, линкер добавляет префикс "lib" ...
5) ... и будет искать библиотеку libcnbpcnclap
bormant
Это уже лишнее, я уже дал сылку на ебилд который нормально собирается. Там причина что конфиг Makefile.am и другие файлы копируются в определенный каталог, а пути при этом в конфиге остаются прежними, вот и получается балалайка. Изначально ебилд нерабочий и рабочим ни когда и не был.
ormorph,
это для понимания, чтобы не было потом "заменил в нём -lcnbpcnclapi на -libcnbpcnclapi".
Понимание лишним не будет.
Попробуйте использовать другой ебилд тыц.
Получение прямых ссылок на файл ->Raw
Большое спасибо за подсказку.
Но как оттуда что-либо скачать? *SCRATCH* Непонятно, хоть убейся, как получить ссылку.
И почему в списке этого репозитария нет этого самого cnijfilter-drivers? Как его нашли? %)
Wehrmacht_Rover, https://github.com/mfld-fr/gentoo/tree/759d63ea37e81c20055e6a87625d0c51518e80f9 кнопка clone or download, там выберите Download ZIP, а потом уже из архива дернете.
Скачал все-таки *YAHOO*
Какой же это секас, с этого гитхаба скачивать :!
Полчаса потратил, сначала клонировал весь репозиторий, но там, как ни странно, этого пакета не оказалось %) :D
Добавлено: 14th Sep 2017 10:39:00
Wehrmacht_Rover, https://github.com/mfld-fr/gentoo/tree/759d63ea37e81c20055e6a87625d0c51518e80f9 кнопка clone or download, там выберите Download ZIP, а потом уже из архива дернете.
А фигли :P
но там, как ни странно, этого пакета не оказалось
Как это вообще? *CRAZY*
Как это вообще?
Да не обязательно клонировать весь репозиторий, если можно просто скачать каждый файл отдельно.
Просто щелкаешь по файлу, затем щелкаешь кнопку Raw и далее копируешь адрес в адресной строке, а далее скачиваешь wget:
[console]$ wget адрес[/console]
Если нужен репозиторийс данным ебилдом, то можно скачать так:
$ git clone https://github.com/mfld-fr/gentoo --branch cnijfilter-1