Score:1

How to get xcb/xcb_icccm.h

hk flag

I am trying to build bspwm, how do I get that dependency? I already have xcb installed. I'm on Ubuntu 21.04, the error message is

cc -std=c99 -pedantic -Wall -Wextra -DJSMN_STRICT -D_POSIX_C_SOURCE=200809L -DVERSION=\"0.9.10-33-ge22d0fa\"  -c -o bspwm.o src/bspwm.c
In file included from src/bspwm.c:39:
src/types.h:29:10: fatal error: xcb/xcb_icccm.h: No such file or directory
   29 | #include <xcb/xcb_icccm.h>
      |          ^~~~~~~~~~~~~~~~~
compilation terminated.
make: *** [<builtin>: bspwm.o] Error 1
hr flag
[File list of package libxcb-icccm4-dev in hirsute of architecture amd64](https://packages.ubuntu.com/hirsute/amd64/libxcb-icccm4-dev/filelist)
antoine avatar
hk flag
Thanks, what do I do with this information?
hr flag
You install `libxcb-icccm4-dev`, since it is the package that contains the file
hr flag
See also [How do I find the package that provides a file?](https://askubuntu.com/questions/481/how-do-i-find-the-package-that-provides-a-file)
antoine avatar
hk flag
Thanks it worked. Now it says I need xcb/randr.h. I did dpkg -S randr.h and installed x11proto-dev and libxrandr-dev but it still says I need xcb/randr.h.
hr flag
`dpkg -S` only searches packages that are already installed on your system - for files you don't have, you need to use the online package search or install and use `apt-file`. In this case, it looks like you need `libxcb-randr0-dev`
Score:3
it flag

Usually I use the followying way to search a file in all entire repositories:

$ sudo apt install apt-file
$ sudo apt-file update
$ apt-file search xcb/xcb_icccm.h
libxcb-icccm4-dev: /usr/include/xcb/xcb_icccm.h

Or use online search at packages.ubuntu.com.

mangohost

Post an answer

Most people don’t grasp that asking a lot of questions unlocks learning and improves interpersonal bonding. In Alison’s studies, for example, though people could accurately recall how many questions had been asked in their conversations, they didn’t intuit the link between questions and liking. Across four studies, in which participants were engaged in conversations themselves or read transcripts of others’ conversations, people tended not to realize that question asking would influence—or had influenced—the level of amity between the conversationalists.