Build fail on Ubuntu 21.04

Ask software engineering and SDK questions for developers working on Mac OS X, Windows or Linux.
  • Author
  • Message
Offline

alatteri

  • Posts: 21
  • Joined: Fri Jul 17, 2020 7:22 pm
  • Real Name: Alan Latteri

Build fail on Ubuntu 21.04

PostFri Apr 23, 2021 8:36 pm

Selecting previously unselected package desktopvideo.
(Reading database ... 88579 files and directories currently installed.)
Preparing to unpack .../desktopvideo_12.0a14_amd64.deb ...
Unpacking desktopvideo (12.0a14) ...
Setting up desktopvideo (12.0a14) ...
Preparing new blackmagic driver for 5.11.0-16-generic kernel...
Adding to DKMS
Building (failed)
Preparing new blackmagic-io driver for 5.11.0-16-generic kernel...
Adding to DKMS
Building
Installing
Loading modules...
blackmagic_io
Enabling systemd services...
DesktopVideoHelper
Starting systemd services...
DesktopVideoHelper

********************************************************************************
Failed to build driver(s)

Possible causes:
1. Driver is incompatible with your kernel version
2. Kernel headers/gcc/make/etc. is not installed
3. Kernel header version does not match the running kernel (5.11.0-16-generic)

Error messages:
dkms build -m blackmagic -v 12.0a14
---

Kernel preparation unnecessary for this kernel. Skipping...

Building module:
cleaning build area...
make -j12 KERNELRELEASE=5.11.0-16-generic KERNELRELEASE=5.11.0-16-generic...(bad exit status: 2)
Error! Bad return status for module build on kernel: 5.11.0-16-generic (x86_64)
Consult /var/lib/dkms/blackmagic/12.0a14/build/make.log for more information.


Code: Select all
DKMS make.log for blackmagic-12.0a14 for kernel 5.11.0-16-generic (x86_64)
Fri Apr 23 01:34:20 PM PDT 2021
touch .bmd-support.o.cmd
make -C /lib/modules/5.11.0-16-generic/build M=/var/lib/dkms/blackmagic/12.0a14/build
make[1]: Entering directory '/usr/src/linux-headers-5.11.0-16-generic'
  CC [M]  /var/lib/dkms/blackmagic/12.0a14/build/blackmagic_serial.o
  CC [M]  /var/lib/dkms/blackmagic/12.0a14/build/blackmagic_core.o
  CC [M]  /var/lib/dkms/blackmagic/12.0a14/build/blackmagic_lib.o
  CC [M]  /var/lib/dkms/blackmagic/12.0a14/build/blackmagic_dma.o
  CC [M]  /var/lib/dkms/blackmagic/12.0a14/build/blackmagic_gate.o
  SHIPPED /var/lib/dkms/blackmagic/12.0a14/build/bmd-support.o
/var/lib/dkms/blackmagic/12.0a14/build/blackmagic_core.c: In function ‘blackmagic_ioctl’:
/var/lib/dkms/blackmagic/12.0a14/build/blackmagic_core.c:244:5: warning: "HAVE_UNLOCKED_IOCTL" is not defined, evaluates to 0 [-Wundef]
  244 | #if HAVE_UNLOCKED_IOCTL
      |     ^~~~~~~~~~~~~~~~~~~
/var/lib/dkms/blackmagic/12.0a14/build/blackmagic_core.c: At top level:
/var/lib/dkms/blackmagic/12.0a14/build/blackmagic_core.c:296:3: error: ‘struct file_operations’ has no member named ‘ioctl’
  296 |  .ioctl = blackmagic_ioctl,
      |   ^~~~~
/var/lib/dkms/blackmagic/12.0a14/build/blackmagic_core.c:296:11: error: positional initialization of field in ‘struct’ declared with ‘designated_init’ attribute [-Werror=designated-init]
  296 |  .ioctl = blackmagic_ioctl,
      |           ^~~~~~~~~~~~~~~~
/var/lib/dkms/blackmagic/12.0a14/build/blackmagic_core.c:296:11: note: (near initialization for ‘blackmagic_fops’)
/var/lib/dkms/blackmagic/12.0a14/build/blackmagic_core.c:296:11: error: initialization of ‘int (*)(struct file *, loff_t,  loff_t,  int)’ {aka ‘int (*)(struct file *, long long int,  long long int,  int)’
} from incompatible pointer type ‘int (*)(struct inode *, struct file *, unsigned int,  long unsigned int)’ [-Werror=incompatible-pointer-types]
/var/lib/dkms/blackmagic/12.0a14/build/blackmagic_core.c:296:11: note: (near initialization for ‘blackmagic_fops.fsync’)
/var/lib/dkms/blackmagic/12.0a14/build/blackmagic_lib.c: In function ‘dl_get_user_pages’:
/var/lib/dkms/blackmagic/12.0a14/build/blackmagic_lib.c:683:32: error: passing argument 1 of ‘get_user_pages_remote’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  683 |    ret = get_user_pages_remote(current_task, current_task->mm, (unsigned long)ptr & PAGE_MASK, *nr_pages, write ? FOLL_WRITE : 0, pages, NULL, NULL);
      |                                ^~~~~~~~~~~~
      |                                |
      |                                struct task_struct *
In file included from ./include/linux/scatterlist.h:8,
                 from ./include/linux/dmapool.h:14,
                 from ./include/linux/pci.h:1449,
                 from /var/lib/dkms/blackmagic/12.0a14/build/blackmagic_lib.c:30:
./include/linux/mm.h:1761:46: note: expected ‘struct mm_struct *’ but argument is of type ‘struct task_struct *’
 1761 | long get_user_pages_remote(struct mm_struct *mm,
      |                            ~~~~~~~~~~~~~~~~~~^~
/var/lib/dkms/blackmagic/12.0a14/build/blackmagic_lib.c:683:58: warning: passing argument 2 of ‘get_user_pages_remote’ makes integer from pointer without a cast [-Wint-conversion]
  683 |    ret = get_user_pages_remote(current_task, current_task->mm, (unsigned long)ptr & PAGE_MASK, *nr_pages, write ? FOLL_WRITE : 0, pages, NULL, NULL);
      |                                              ~~~~~~~~~~~~^~~~
      |                                                          |
      |                                                          struct mm_struct *
In file included from ./include/linux/scatterlist.h:8,
                 from ./include/linux/dmapool.h:14,
                 from ./include/linux/pci.h:1449,
                 from /var/lib/dkms/blackmagic/12.0a14/build/blackmagic_lib.c:30:
./include/linux/mm.h:1762:22: note: expected ‘long unsigned int’ but argument is of type ‘struct mm_struct *’
 1762 |        unsigned long start, unsigned long nr_pages,
      |        ~~~~~~~~~~~~~~^~~~~
/var/lib/dkms/blackmagic/12.0a14/build/blackmagic_lib.c:683:126: warning: passing argument 5 of ‘get_user_pages_remote’ makes pointer from integer without a cast [-Wint-conversion]
  683 |    ret = get_user_pages_remote(current_task, current_task->mm, (unsigned long)ptr & PAGE_MASK, *nr_pages, write ? FOLL_WRITE : 0, pages, NULL, NULL);
      |                                                                                                           ~~~~~~~~~~~~~~~~~~~^~~
      |                                                                                                                              |
      |                                                                                                                              int
In file included from ./include/linux/scatterlist.h:8,
                 from ./include/linux/dmapool.h:14,
                 from ./include/linux/pci.h:1449,
                 from /var/lib/dkms/blackmagic/12.0a14/build/blackmagic_lib.c:30:
./include/linux/mm.h:1763:46: note: expected ‘struct page **’ but argument is of type ‘int’
 1763 |        unsigned int gup_flags, struct page **pages,
      |                                ~~~~~~~~~~~~~~^~~~~
/var/lib/dkms/blackmagic/12.0a14/build/blackmagic_lib.c:683:131: error: passing argument 6 of ‘get_user_pages_remote’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  683 |    ret = get_user_pages_remote(current_task, current_task->mm, (unsigned long)ptr & PAGE_MASK, *nr_pages, write ? FOLL_WRITE : 0, pages, NULL, NULL);
      |                                                                                                                                   ^~~~~
      |                                                                                                                                   |
      |                                                                                                                                   struct page **
In file included from ./include/linux/scatterlist.h:8,
                 from ./include/linux/dmapool.h:14,
                 from ./include/linux/pci.h:1449,
                 from /var/lib/dkms/blackmagic/12.0a14/build/blackmagic_lib.c:30:
./include/linux/mm.h:1764:32: note: expected ‘struct vm_area_struct **’ but argument is of type ‘struct page **’
 1764 |        struct vm_area_struct **vmas, int *locked);
      |        ~~~~~~~~~~~~~~~~~~~~~~~~^~~~
/var/lib/dkms/blackmagic/12.0a14/build/blackmagic_lib.c:683:10: error: too many arguments to function ‘get_user_pages_remote’
  683 |    ret = get_user_pages_remote(current_task, current_task->mm, (unsigned long)ptr & PAGE_MASK, *nr_pages, write ? FOLL_WRITE : 0, pages, NULL, NULL);
      |          ^~~~~~~~~~~~~~~~~~~~~
In file included from ./include/linux/scatterlist.h:8,
                 from ./include/linux/dmapool.h:14,
                 from ./include/linux/pci.h:1449,
                 from /var/lib/dkms/blackmagic/12.0a14/build/blackmagic_lib.c:30:
./include/linux/mm.h:1761:6: note: declared here
 1761 | long get_user_pages_remote(struct mm_struct *mm,
      |      ^~~~~~~~~~~~~~~~~~~~~
cc1: some warnings being treated as errors
make[2]: *** [scripts/Makefile.build:287: /var/lib/dkms/blackmagic/12.0a14/build/blackmagic_core.o] Error 1
make[2]: *** Waiting for unfinished jobs....
cc1: some warnings being treated as errors
make[2]: *** [scripts/Makefile.build:287: /var/lib/dkms/blackmagic/12.0a14/build/blackmagic_lib.o] Error 1
make[1]: *** [Makefile:1837: /var/lib/dkms/blackmagic/12.0a14/build] Error 2
make[1]: Leaving directory '/usr/src/linux-headers-5.11.0-16-generic'
make: *** [Makefile:44: all] Error 2
Offline
User avatar

VennStone

  • Posts: 55
  • Joined: Sun Sep 29, 2019 6:50 pm
  • Location: Athens
  • Real Name: Ven Stone

Re: Build fail on Ubuntu 21.04

PostSun Apr 25, 2021 5:13 am

Desktop Video 12.0 does not support kernel 5.11+.
Debian 10 / 11
Magewell 11100 Pro
Intensity Pro
Intensity Pro 4K
DeckLink Mini Recorder 4K
DeckLink Quad
Offline

Mejibyte

  • Posts: 2
  • Joined: Sat Aug 15, 2020 11:09 pm
  • Real Name: Andres Mejia

Re: Build fail on Ubuntu 21.04

PostMon Sep 06, 2021 4:00 am

I run into a similar compile error after upgrading my Linux kernel on Arch Linux to 5.13. As a workaround, I went back to the LTS kernel (5.10) where I can install the drivers correctly and my Intensity Pro 4k works.

Are there any plans of an official update to the drivers to make them build on newer kernels?

Thanks!

Return to Software Developers

Who is online

Users browsing this forum: No registered users and 13 guests