сенсорный экран usb fujitsu на kubuntu 13.04 (64-разрядном) на P1630: 'совершите' ошибки

Я установил Kubuntu 13.04 (64-разрядный) на моей новой Fujitsu LifeBook P1630, и добавил всего несколько пакетов:

Сначала aptitude, затем я сделал aptitude update && safe-upgrade, затем xinput-calibrator (который, кажется, работает, за исключением того, что я должен выполнить его снова каждый раз, когда я перезапускаю систему), затем gcc, make, build-essential, checkinstall, binutils, и linux-source.

Затем я загрузил файл cybergene-fujitsu-usb-touchscreen-112fdb75b406.zip, который связан от страницы https://bitbucket.org/cybergene/fujitsu-usb-touchscreen/overview (я предполагаю, что это - неуловимый v0.3.9, который, кажется, не связан под тем именем ниоткуда); я извлек его содержание к каталогу ~/fujitsu-touchscreen-driver/cybergene-fujitsu-usb-touchscreen-112fdb75b406 и предпринятый для выполнения make. Консоль (er, Konsole) трассировка ниже:

archelon@ingelrayok:~/fujitsu-touchscreen-driver/cybergene-fujitsu-usb-touchscreen-112fdb75b406$ make
make -C /lib/modules/3.8.0-30-generic/build M=/home/archelon/fujitsu-touchscreen-driver/cybergene-fujitsu-usb-touchscreen-112fdb75b406 modules
make[1]: Entering directory `/usr/src/linux-headers-3.8.0-30-generic'
  CC [M]  /home/archelon/fujitsu-touchscreen-driver/cybergene-fujitsu-usb-touchscreen-112fdb75b406/fujitsu_usb_touchscreen.o
/home/archelon/fujitsu-touchscreen-driver/cybergene-fujitsu-usb-touchscreen-112fdb75b406/fujitsu_usb_touchscreen.c: In function ‘usb_u810_tablet_irq’:
/home/archelon/fujitsu-touchscreen-driver/cybergene-fujitsu-usb-touchscreen-112fdb75b406/fujitsu_usb_touchscreen.c:133:4: error: implicit declaration of function ‘dbg’ [-Werror=implicit-function-declaration]
/home/archelon/fujitsu-touchscreen-driver/cybergene-fujitsu-usb-touchscreen-112fdb75b406/fujitsu_usb_touchscreen.c:182:3: error: implicit declaration of function ‘err’ [-Werror=implicit-function-declaration]
/home/archelon/fujitsu-touchscreen-driver/cybergene-fujitsu-usb-touchscreen-112fdb75b406/fujitsu_usb_touchscreen.c: In function ‘usb_u810_tablet_probe’:
/home/archelon/fujitsu-touchscreen-driver/cybergene-fujitsu-usb-touchscreen-112fdb75b406/fujitsu_usb_touchscreen.c:246:6: error: called object ‘err’ is not a function
/home/archelon/fujitsu-touchscreen-driver/cybergene-fujitsu-usb-touchscreen-112fdb75b406/fujitsu_usb_touchscreen.c:253:6: error: called object ‘err’ is not a function
/home/archelon/fujitsu-touchscreen-driver/cybergene-fujitsu-usb-touchscreen-112fdb75b406/fujitsu_usb_touchscreen.c:263:6: error: called object ‘err’ is not a function
/home/archelon/fujitsu-touchscreen-driver/cybergene-fujitsu-usb-touchscreen-112fdb75b406/fujitsu_usb_touchscreen.c:270:6: error: called object ‘err’ is not a function
/home/archelon/fujitsu-touchscreen-driver/cybergene-fujitsu-usb-touchscreen-112fdb75b406/fujitsu_usb_touchscreen.c:277:6: error: called object ‘err’ is not a function
/home/archelon/fujitsu-touchscreen-driver/cybergene-fujitsu-usb-touchscreen-112fdb75b406/fujitsu_usb_touchscreen.c:302:5: error: called object ‘err’ is not a function
/home/archelon/fujitsu-touchscreen-driver/cybergene-fujitsu-usb-touchscreen-112fdb75b406/fujitsu_usb_touchscreen.c:358:5: error: called object ‘err’ is not a function
/home/archelon/fujitsu-touchscreen-driver/cybergene-fujitsu-usb-touchscreen-112fdb75b406/fujitsu_usb_touchscreen.c:366:5: error: called object ‘err’ is not a function
cc1: some warnings being treated as errors
make[2]: *** [/home/archelon/fujitsu-touchscreen-driver/cybergene-fujitsu-usb-touchscreen-112fdb75b406/fujitsu_usb_touchscreen.o] Error 1
make[1]: *** [_module_/home/archelon/fujitsu-touchscreen-driver/cybergene-fujitsu-usb-touchscreen-112fdb75b406] Error 2
make[1]: Leaving directory `/usr/src/linux-headers-3.8.0-30-generic'
make: *** [fujitsu_usb_touchscreen.ko] Error 2
archelon@ingelrayok:~/fujitsu-touchscreen-driver/cybergene-fujitsu-usb-touchscreen-112fdb75b406$

Я должен также отметить это make завершается без ошибок на моем другом компьютере, Toshiba Satellite R10 рабочий Kubuntu 12.04; эта машина также имеет (полностью операционный) планшет со стилусом. (Планшетом Toshiba является Wacom с активным цифровым преобразователем в противоположность USB Fujitsu резистивный сенсорный экран). Так, вероятно, я просто пропускаю некоторый пакет или другой---, я ничего не компилировал в течение многих лет, и никогда не было особенно хорошо в нем. Возможно, можно уладить меня.

ОБНОВЛЕНИЕ: я заменил 13.04 12.04 LTS, сохранив мой / домашний раздел и теперь компиляции пакета: make завершается без ошибок. Однако make install не делает. [Чтобы быть точным, я работал checkinstall (или, скорее sudo checkinstall), который звонит make install, потому что насколько я могу сказать, первый - простое обновление последнего (по крайней мере, в моих целях), предоставляя интеграции с системой управления пакета.] Первоначально, это перестало работать со следующей ошибкой:

make: execvp: /etc/init.d/fujitsu_touchscreen: Permission denied
make: *** [install] Error 127

После некоторого исследования я пытался использовать chmod +x на затронутом файле:

$ sudo chmod +x /etc/init.d/fujitsu_touchscreen

Выполнение sudo checkinstall снова, ошибка разрешения, как замечается, была разрешена; это добирается гораздо дальше вперед прежде, чем перестать работать снова. Журнал, который это предлагает печатать к stdout, показывает a dpkg ошибка, следующим образом:

dpkg: error processing /home/archelon/fujitsu-touchscreen-driver/cybergene-fujitsu-usb-touchscreen-112fdb75b406/cybergene-fujitsu-usb-touchscreen-112fdb75b406_amd64.deb (--install):
 unable to create `/sys/module/fujitsu/usb/touchscreen/parameters/touch_maxy.dpkg-new' (while processing `/sys/module/fujitsu/usb/touchscreen/parameters/touch_maxy'): No such file or directory

И, действительно, в то время как существует /sys/module/fujitsu_usb_touchscreen/parameters/touch_maxy, существует нет /sys/module/fujitsu/usb/touchscreen/parameters/touch_maxy; по-видимому, типографская ошибка была представлена где-нибудь. Таким образом я должен найти и зафиксировать его. Но к сожалению я имею очень смутное представление, где посмотреть кроме install; раздел make-файла, и это не там. (Я понимаю, что иногда существует install файл вместо этого? Но нет в этом случае.)... Справка?

(Так как это - совершенно отличная проблема, я задал отдельный вопрос: 'сделайте установку', перестал работать по-видимому из-за опечатки, но не в make-файле: Как найти и зафиксировать?)

ОБНОВИТЕ 18.10.2013 После переустановки Kubuntu 12.04 снова, на этот раз воссоздав / домашний раздел (который, снова, был сгенерирован во время установки 13,04), я больше не могу сразу воспроизвести странную ошибку выше. Мне все еще любопытно знать, как символы нижнего подчеркивания были изменены на наклонные черты, но выглядит, как будто ни у кого нет идеи. Это, возможно, также представляет интерес отметить это, в то время как я успешно все еще не работал checkinstall против этого пакета я сделал make install; это требует executabilization /etc/init.d/fujitsu_touchscreen и установка hal, и замораживания GUI вскоре после установки завершаются, и нет никакой особой новой функциональности впоследствии, что я заметил, и система больше не может возобновляться от того, чтобы быть приостановленным. Я впоследствии потерял интерес к fujitsu-usb-touchscreen так как кажется, что пакет Вращения Magick может обеспечить все, что я искал. Это, однако, не работает 'out-of-the-box'; я зарегистрировал отчет об ошибках, который также документирует неэлегантное обходное решение, которое я обнаружил.

1
задан 13 April 2017 в 15:24

1 ответ

fujitsu_usb_touchscreen.c говорит, что это v0.3.9, несмотря на прилагаемый файл README с сообщением «Модуль ядра Fujitsu usb с сенсорным экраном и утилиты v0.3.5». Я ненавижу говорить это, но «это работает для меня»:

wget https://bitbucket.org/cybergene/fujitsu-usb-touchscreen/get/112fdb75b406.zip
unzip 112fdb75b406.zip
cd cybergene-fujitsu-usb-touchscreen-112fdb75b406
make

Три возможности:

  1. Возможно, ZIP-файл поврежден? Попытаться загрузить снова и повторить шаги извлечения / создания?

  2. Убедитесь, что у вас установлен текущий пакет linux-headers (это необходимо для входных файлов: linux / kernel.h, linux / slab.h, linux / module.h, linux / init.h, linux / usb / input.h). Например: find /usr/src/ -iname slab.h

  3. Автор пакета говорит: «Напишите мне, если у вас возникли проблемы с установкой пакета». Вы уже пробовали это?

- умоляю: edit

Я проверял это в гостях VirtualBox. Тот, под которым он работал, был установлен с kubuntu-13.04-desktop-i386.iso некоторое время назад и, вероятно, имел некоторые дополнительные заголовки, которые делали его счастливым.

Я только что установил чистый гость из kubuntu-13.04-desktop-amd64.iso и смог воспроизвести вашу ошибку. Не уверен, что там происходит, но если в fujitsu_usb_touchscreen.c я добавляю следующие строки сразу после include, то он компилируется без ошибок:

#define dbg(args...) printk(args)
#define err(args...) printk(args)

Кроме того, функция usb_u810_tablet_probe () определяет int err, который сбивает с толку людей против функции / макроса err().

Надеюсь, это поможет!

0
ответ дан 13 April 2017 в 15:24

Другие вопросы по тегам:

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