fish-shell: ярлык «ctrl-L»

Первая проблема

Отсутствует пакет kernel-headers . Они нужны вам для компиляции модулей ядра.

yum install kernel-headers

Предположим, , откуда вы загрузили драйверы . Когда я распаковал их на CentOS 6.4 я получил следующую ошибку:

$ cd jmebp-1.0.8.5
$ ls
CHANGELOG  jme.c  jme.h  Makefile  scripts
$ make
make: *** /lib/modules/2.6.32-279.14.1.el6.x86_64/build: No such file or directory.  Stop.
make: *** [modules] Error 2

После установки пакета kernel-headers я выполнил make второй раз:

$ make
make: *** /lib/modules/2.6.32-279.14.1.el6.x86_64/build: No such file or directory.  Stop.
make: *** [modules] Error 2

По-прежнему проблема? Отлаживая его дальше, я выяснил другую свою проблему, с которой вы тоже можете столкнуться, поэтому на всякий случай я документирую ее ниже.

Вторая проблема

Ссылка в каталоге ядра оказалась неработающей.

$ pwd
/lib/modules/2.6.32-279.14.1.el6.x86_64

$ ls -l | grep build
lrwxrwxrwx  1 root root     51 Dec 15 14:49 build -> ../../../usr/src/kernels/2.6.32-279.14.1.el6.x86_64
lrwxrwxrwx  1 root root      5 Dec 15 14:50 source -> build

$ ls -l build/
ls: cannot access build/: No such file or directory

Ой, неправильная версия заголовков ядра и kernel-devel для нашей версии ядра. В настоящее время мы работаем с этой версией ядра:

$ uname -r
2.6.32-279.14.1.el6.x86_64

Но мы только что установили пакеты kernel-headers и kernel-devel для этой версии:

2.6.32-358.6.1.el6.x86_64

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

$ yum update kernel

После нашей перезагрузки все выглядит намного лучше:

$ ls
CHANGELOG  jme.c  jme.h  Makefile  scripts

$ make
make[1]: Entering directory `/usr/src/kernels/2.6.32-358.6.1.el6.x86_64'
  CC [M]  /home/sam/jmebp/jmebp-1.0.8.5/jme.o
  Building modules, stage 2.
  MODPOST 1 modules
  CC      /home/sam/jmebp/jmebp-1.0.8.5/jme.mod.o
  LD [M]  /home/sam/jmebp/jmebp-1.0.8.5/jme.ko.unsigned
  NO SIGN [M] /home/sam/jmebp/jmebp-1.0.8.5/jme.ko
make[1]: Leaving directory `/usr/src/kernels/2.6.32-358.6.1.el6.x86_64'

$ ls
CHANGELOG  jme.c  jme.h  jme.ko  jme.ko.unsigned  Makefile  scripts

Теперь мы видим модуль ядра jme.ko. Чтобы установить его:

make install
0
30.05.2018, 14:50
2 ответа

Los terminales de Unix se llenan de contenido interpretando secuencias de control y texto entremezclados en un solo flujo. muchos caracteres pueden ser tanto texto como un código de control y depende del contexto lo que signifiquen.

[3;Jes una de esas secuencias. en el contexto incorrecto se imprime, en el contexto correcto es parte de restablecer la pantalla.

consulte las páginas del manual termcap, console_codesy tputpara obtener más detalles.

2
28.01.2020, 02:31

Su emulador de terminal no coincide con el valor de su variable de entorno TERM. El error más común es pensar que algo que no es XTerm coincidirá con los registros termcap/terminfo denominados xtermo xterm-newo xterm-256color.

Su registro terminfo especifica la capacidad relativamente nueva E3(especificada actualmente para linux, putty, putty-256color, xterm-basic, xterm-new, xterm, xterm-256colory algunos otros tipos de terminales )que le dicen a los programas que hay un búfer de desplazamiento hacia atrás para borrar y cómo borrarlo. Pero su emulador de terminal, de hecho, no admite esa secuencia de control y, en su lugar, imprime lo que ve en respuesta a ella. El caparazón de pescado está ejecutando el comando clear, que ahora hace uso de este aumento terminfo.

El nombre dado en el valor de su variable de entorno TERMdebe coincidir con el nombre de un registro termcap/terminfo que describa correctamente la operación de su emulador de terminal.

Lecturas adicionales

0
28.01.2020, 02:31

Теги

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