Установка драйвера displaylink в Ubuntu 20.04: неудовлетворенная зависимость `evdi`
Я пытаюсь следовать собственным инструкциям по установке здесь: Адаптер USB-HDMI, который работает с Ubuntu . Они отлично работают в Ubuntu 22.04, но не в 20.04. 20.04, когда я делаю этот шаг, я получаю:
$ sudo apt install displaylink-driver
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
displaylink-driver : Depends: evdi (>= 1.14.1) but it is not going to be installed
Depends: evdi (< 1.15.0) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.
Этот ответ рекомендует .
Это приводит к большему количеству ошибок:
Building initial module for 5.15.0-41-generic
ERROR (dkms apport): kernel package linux-headers-5.15.0-41-generic is not supported
Error! Bad return status for module build on kernel: 5.15.0-41-generic (x86_64)
Consult /var/lib/dkms/evdi/1.6.0+dfsg/build/make.log for more information.
dpkg: error processing package evdi-dkms (--configure):
installed evdi-dkms package post-installation script subprocess returned error exit status 10
Setting up libevdi0 (1.6.0+dfsg-1ubuntu3) ...
Processing triggers for libc-bin (2.31-0ubuntu9.9) ...
Errors were encountered while processing:
evdi-dkms
E: Sub-process /usr/bin/dpkg returned an error code (1)
Полный контекст:
$ sudo apt install evdi-dkms
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
libevdi0
The following NEW packages will be installed:
evdi-dkms libevdi0
0 upgraded, 2 newly installed, 0 to remove and 0 not upgraded.
Need to get 34.4 kB of archives.
After this operation, 173 kB of additional disk space will be used.
Do you want to continue? [Y/n]
Get:1 http://us.archive.ubuntu.com/ubuntu focal/universe amd64 evdi-dkms all 1.6.0+dfsg-1ubuntu3 [25.5 kB]
Get:2 http://us.archive.ubuntu.com/ubuntu focal/universe amd64 libevdi0 amd64 1.6.0+dfsg-1ubuntu3 [8,972 B]
Fetched 34.4 kB in 0s (74.8 kB/s)
Selecting previously unselected package evdi-dkms.
(Reading database ... 499689 files and directories currently installed.)
Preparing to unpack .../evdi-dkms_1.6.0+dfsg-1ubuntu3_all.deb ...
Unpacking evdi-dkms (1.6.0+dfsg-1ubuntu3) ...
Selecting previously unselected package libevdi0.
Preparing to unpack .../libevdi0_1.6.0+dfsg-1ubuntu3_amd64.deb ...
Unpacking libevdi0 (1.6.0+dfsg-1ubuntu3) ...
Setting up evdi-dkms (1.6.0+dfsg-1ubuntu3) ...
Loading new evdi-1.6.0+dfsg DKMS files...
Building for 5.15.0-41-generic
Building initial module for 5.15.0-41-generic
ERROR (dkms apport): kernel package linux-headers-5.15.0-41-generic is not supported
Error! Bad return status for module build on kernel: 5.15.0-41-generic (x86_64)
Consult /var/lib/dkms/evdi/1.6.0+dfsg/build/make.log for more information.
dpkg: error processing package evdi-dkms (--configure):
installed evdi-dkms package post-installation script subprocess returned error exit status 10
Setting up libevdi0 (1.6.0+dfsg-1ubuntu3) ...
Processing triggers for libc-bin (2.31-0ubuntu9.9) ...
Errors were encountered while processing:
evdi-dkms
E: Sub-process /usr/bin/dpkg returned an error code (1)
И сейчасsudo apt installустанавливается на что-либо еще. И терпит неудачу с этим:
$ sudo apt upgrade
Reading package lists... Done
Building dependency tree
Reading state information... Done
Calculating upgrade... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
1 not fully installed or removed.
After this operation, 0 B of additional disk space will be used.
Do you want to continue? [Y/n]
Setting up evdi-dkms (1.6.0+dfsg-1ubuntu3) ...
Removing old evdi-1.6.0+dfsg DKMS files...
------------------------------
Deleting module version: 1.6.0+dfsg
completely from the DKMS tree.
------------------------------
Done.
Loading new evdi-1.6.0+dfsg DKMS files...
Building for 5.15.0-41-generic
Building initial module for 5.15.0-41-generic
ERROR (dkms apport): kernel package linux-headers-5.15.0-41-generic is not supported
Error! Bad return status for module build on kernel: 5.15.0-41-generic (x86_64)
Consult /var/lib/dkms/evdi/1.6.0+dfsg/build/make.log for more information.
dpkg: error processing package evdi-dkms (--configure):
installed evdi-dkms package post-installation script subprocess returned error exit status 10
Errors were encountered while processing:
evdi-dkms
E: Sub-process /usr/bin/dpkg returned an error code (1)
Поэтому я бегуsudo dpkg -r evdi-dkms, согласно моему комментарию здесь , чтобы это исправить, и я снова вернулся к началу.sudo apt upgradeснова работает, слава богу! Но,sudo apt install displaylink-driverвозвращается к ошибке в начале.
Я попробовал обновиться до Ubuntu 22.04, и/bootслишком полный.
Примечание: изsudo apt install evdi-dkmsсообщения об ошибках выше, в нем говорится:
Проконсультируйтесь для получения дополнительной информации.
Вот что находится в этом файле:
От
/var/lib/dkms/evdi/1.6.0+dfsg/build/make.log:
DKMS make.log for evdi-1.6.0+dfsg for kernel 5.15.0-41-generic (x86_64)
Thu 28 Sep 2023 07:05:36 PM MST
make: Entering directory '/usr/src/linux-headers-5.15.0-41-generic'
CC [M] /var/lib/dkms/evdi/1.6.0+dfsg/build/evdi_drv.o
CC [M] /var/lib/dkms/evdi/1.6.0+dfsg/build/evdi_connector.o
CC [M] /var/lib/dkms/evdi/1.6.0+dfsg/build/evdi_modeset.o
CC [M] /var/lib/dkms/evdi/1.6.0+dfsg/build/evdi_encoder.o
CC [M] /var/lib/dkms/evdi/1.6.0+dfsg/build/evdi_main.o
CC [M] /var/lib/dkms/evdi/1.6.0+dfsg/build/evdi_fb.o
CC [M] /var/lib/dkms/evdi/1.6.0+dfsg/build/evdi_gem.o
/var/lib/dkms/evdi/1.6.0+dfsg/build/evdi_drv.c:11:10: fatal error: drm/drmP.h: No such file or directory
11 | #include <drm/drmP.h>
| ^~~~~~~~~~~~
compilation terminated.
make[1]: *** [scripts/Makefile.build:285: /var/lib/dkms/evdi/1.6.0+dfsg/build/evdi_drv.o] Error 1
make[1]: *** Waiting for unfinished jobs....
CC [M] /var/lib/dkms/evdi/1.6.0+dfsg/build/evdi_painter.o
/var/lib/dkms/evdi/1.6.0+dfsg/build/evdi_connector.c:14:10: fatal error: drm/drmP.h: No such file or directory
14 | #include <drm/drmP.h>
| ^~~~~~~~~~~~
compilation terminated.
/var/lib/dkms/evdi/1.6.0+dfsg/build/evdi_modeset.c:15:10: fatal error: drm/drmP.h: No such file or directory
15 | #include <drm/drmP.h>
| ^~~~~~~~~~~~
compilation terminated.
make[1]: *** [scripts/Makefile.b<drm/drmP.h>uild:285: /var/lib/dkms/evdi/1.6.0+dfsg/build/evdi_modeset.o] Error 1
make[1]: *** [scripts/Makefile.build:285: /var/lib/dkms/evdi/1.6.0+dfsg/build/evdi_connector.o] Error 1
/var/lib/dkms/evdi/1.6.0+dfsg/build/evdi_encoder.c:14:10: fatal error: drm/drmP.h: No such file or directory
14 | #include <drm/drmP.h>
| ^~~~~~~~~~~~
compilation terminated.
make[1]: *** [scripts/Makefile.build:285: /var/lib/dkms/evdi/1.6.0+dfsg/build/evdi_encoder.o] Error 1
/var/lib/dkms/evdi/1.6.0+dfsg/build/evdi_gem.c:11:10: fatal error: drm/drmP.h: No such file or directory
11 | #include <drm/drmP.h>
| ^~~~~~~~~~~~
compilation terminated.
make[1]: *** [scripts/Makefile.build:285: /var/lib/dkms/evdi/1.6.0+dfsg/build/evdi_gem.o] Error 1
/var/lib/dkms/evdi/1.6.0+dfsg/build/evdi_main.c:15:10: fatal error: drm/drmP.h: No such file or directory
15 | #include <drm/drmP.h>
| ^~~~~~~~~~~~
compilation terminated.
make[1]: *** [scripts/Makefile.build:285: /var/lib/dkms/evdi/1.6.0+dfsg/build/evdi_main.o] Error 1
/var/lib/dkms/evdi/1.6.0+dfsg/build/evdi_painter.c:12:10: fatal error: drm/drmP.h: No such file or directory
12 | #include <drm/drmP.h>
| ^~~~~~~~~~~~
compilation terminated.
make[1]: *** [scripts/Makefile.build:285: /var/lib/dkms/evdi/1.6.0+dfsg/build/evdi_painter.o] Error 1
/var/lib/dkms/evdi/1.6.0+dfsg/build/evdi_fb.c:20:10: fatal error: drm/drmP.h: No such file or directory
20 | #include <drm/drmP.h>
| ^~~~~~~~~~~~
compilation terminated.
make[1]: *** [scripts/Makefile.build:285: /var/lib/dkms/evdi/1.6.0+dfsg/build/evdi_fb.o] Error 1
make: *** [Makefile:1875: /var/lib/dkms/evdi/1.6.0+dfsg/build] Error 2
make: Leaving directory '/usr/src/linux-headers-5.15.0-41-generic'
ERROR (dkms apport): kernel package linux-headers-5.15.0-41-generic is not supported
Так что, видимо, я упускаю<drm/drmP.h>заголовочный файл, если кто-нибудь знает, как его получить.
The evdiисходный код, кажется, здесь: https://github.com/DisplayLink/evdi
Я не смог построить его с нуля.makeпроисходит сбой из-за отсутствия еще одного заголовочного файла.
(И именно поэтому люди используют Windows, друзья).
Я пытаюсь установить, следуя этим инструкциям: Как установить программное обеспечение DisplayLink в Ubuntu 20.04 или (более поздней версии). Как установить программное обеспечение DisplayLink в устаревших версиях Ubuntu.
...но это тоже не работает.
Новый вопрос: Не могу установить.
libdrm-devв Ubuntu 20.04, потому что для этого требуются зависимости старше, чем у меня есть
Если я вручную создаю и устанавливаюlibdrmиз источника, согласно моему ответу здесь , а затем вручную попытайтесь установить драйвер DisplayLink, установщик все равно блокирует меня:
~/Downloads/Install_Files/DisplayLink/DisplayLink USB Graphics Software for Ubuntu5.8-EXE$ sudo ./displaylink-driver-5.8.0-63.33.run
Verifying archive integrity... 100% MD5 checksums are OK. All good.
Uncompressing DisplayLink Linux Driver 5.8.0-63.33 100%
Distribution discovered: Ubuntu 20.04.4 LTS
[ Installing dependencies ]
Need to update package list.
apt update? (Y/n) n
Unsatisfied dependencies. Missing component: libdrm.
This is a fatal error, cannot install DisplayLink Linux Software.
Смотрите также
1 ответ
Полные инструкции: установка драйвера displaylink в Ubuntu 20.04 (также применимо к версии 22.04 или новее)
Примечание. Эти инструкции также применимы к Ubuntu 22.04 или более поздней версии. Единственная часть, которая была специфична для Ubuntu 20.04, заключалась в использованииsudo aptitude install libdrm-devустановить, так какsudo apt install libdrm-devне сработало.
Я придумал способ! Я был установлен с помощьюaptitude:
sudo aptitude install libdrm-dev
# then choose these options:
n # do NOT leave things as-is
y # DO downgrade dependencies
y # Do continue with the install
Мой полный ответ, вывод и описание смотрите здесь: Невозможно установить на Ubuntu 20.04, поскольку для этого требуются зависимости старше, чем те, что у меня есть.
Затем, однажды у меня былоlibdrm-devуспешно установлен, установка зависимостей в соответствии с официальными инструкциями здесь сработала: :
sudo apt update
sudo apt dist-upgrade
sudo apt install dkms
sudo apt install libdrm-dev # already installed by aptitude above, but running
# this command again doesn't hurt
И тогда мои инструкции в моем ответе здесь сработали: :
Отключите безопасную загрузку в BIOS, затем перезагрузитесь и выполните следующее:
# Make this directory if it doesn't exist, and cd into it
mkdir -p ~/Downloads/Install_Files/DisplayLink
cd ~/Downloads/Install_Files/DisplayLink
# Download the Ubuntu APT package provided by Synaptics.com, the official
# makers of DisplayLink
wget https://www.synaptics.com/sites/default/files/Ubuntu/pool/stable/main/all/synaptics-repository-keyring.deb
# Install the DisplayLink APT package keyring
sudo apt install ./synaptics-repository-keyring.deb
# Update your APT package cache
sudo apt update
# Install the DisplayLink driver provided by Synaptics.com, the official source
sudo apt install displaylink-driver
# Reboot.
# Now it is plug-and-play. Plug in your DisplayLink adapter and it just works.
# It may take up to 5~10 seconds to recognize a monitor.
Сделанный!
После перезагрузки вы можете подключить, например и он будет распознан примерно через 5–10 секунд и автоматически начнет отображаться. на два одновременных выхода 4K с частотой 60 Гц через разъемы USB 3.0 USB-A.
Если вам интересно, вот мой полный результат, когда я запустилsudo apt install displaylink-driver. Обратите внимание, что он явно сказал мне перезагрузиться:
$ sudo apt install displaylink-driver
[sudo] password for gabriel:
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
evdi
The following NEW packages will be installed:
displaylink-driver evdi
0 upgraded, 2 newly installed, 0 to remove and 0 not upgraded.
Need to get 6,318 kB of archives.
After this operation, 0 B of additional disk space will be used.
Do you want to continue? [Y/n]
Get:1 https://www.synaptics.com/sites/default/files/Ubuntu stable/main amd64 evdi amd64 1.14.1-7 [47.4 kB]
Get:2 https://www.synaptics.com/sites/default/files/Ubuntu stable/non-free amd64 displaylink-driver amd64 5.8.0-33 [6,271 kB]
Fetched 6,318 kB in 3s (1,981 kB/s)
Selecting previously unselected package evdi.
(Reading database ... 499730 files and directories currently installed.)
Preparing to unpack .../evdi_1.14.1-7_amd64.deb ...
Unpacking evdi (1.14.1-7) ...
Selecting previously unselected package displaylink-driver.
Preparing to unpack .../displaylink-driver_5.8.0-33_amd64.deb ...
Unpacking displaylink-driver (5.8.0-33) ...
Setting up evdi (1.14.1-7) ...
Creating symlink /var/lib/dkms/evdi/1.14.1/source ->
/usr/src/evdi-1.14.1
DKMS: add completed.
Kernel preparation unnecessary for this kernel. Skipping...
Building module:
cleaning build area...
make -j8 KERNELRELEASE=5.15.0-41-generic all INCLUDEDIR=/lib/modules/5.15.0-41-generic/build/include KVERSION=5.15.0-41-generic DKMS_BUILD=1.....
Signing module:
- /var/lib/dkms/evdi/1.14.1/5.15.0-41-generic/x86_64/module/evdi.ko
Secure Boot not enabled on this system.
cleaning build area...
DKMS: build completed.
evdi.ko:
Running module version sanity check.
- Original module
- No original module exists within this kernel
- Installation
- Installing to /lib/modules/5.15.0-41-generic/updates/dkms/
depmod....
DKMS: install completed.
Reboot required
DisplayLink evdi module installed successfully.
Please reboot your computer to ensure the proper functioning of the software.
Setting up displaylink-driver (5.8.0-33) ...
Reboot required
DisplayLink driver installed successfully.
Please reboot your computer to ensure the proper functioning of the software.
Другие ссылки
- Мой ответ здесь: адаптер USB-HDMI, который работает с Ubuntuадаптер USB-HDMI, который работает с Ubuntu . Орезультатах использования моего , внешний графический видеоадаптер Club3D CSV-1477 USB 3.0 типа A за 90 долларов США к порту Dual Display Port 1.24K60 Гц,внешнего графического видеоадаптера Club3D CSV-1477 с USB 3.0 типа A на двойной дисплей 1.2, 4K, 60 Гц, стоимостью 90 долларов, я рассказываю здесь.
- ***** Более новая официальная информация: Как установить программное обеспечение DisplayLink на устаревшие версии UbuntuКак установить программное обеспечение DisplayLink в устаревшие версии Ubuntu.
- Старая официальная информация: Как установить программное обеспечение DisplayLink в Ubuntu 20.04.