Xpresent Dependancy Issue - Fedora 35

On Fedora 35, kernel 5.16. Building looking-glass from source download (version B5.0.1) and getting a cmake error. I have the dependancy installed, dnf reports libXpresent-devel and libXpresent are installed for my x86_64 architecture but still getting this error:

--   Package 'xpresent', required by 'virtual:world', not found
CMake Error at /usr/share/cmake/Modules/FindPkgConfig.cmake:603 (message):
  A required package was not found
Call Stack (most recent call first):
  /usr/share/cmake/Modules/FindPkgConfig.cmake:825 (_pkg_check_modules_internal)
  displayservers/X11/CMakeLists.txt:5 (pkg_check_modules)

${PATH} shows:

/usr/lib64/libXpresent.so.1

Not sure why cmake is not finding the package. Is it possible to modify the cmake file to find the correct dll? I also tried -DENABLE_WAYLAND=no for a previous issue: libxkbcommon not found, but this has since been resolved with a dnf install. I am using x11 KDE Plasma.

Consult your distro maintainers, when you install libxpresent-devel it should also install the PkgConfig config file which tells applications where to find the shared object (not dll). If it’s failing to find it, it’s the fault of the package maintainer for libxpresent-devel or your system has something else wrong with it.

Note it’s not only looking for the .so file, it also needs the headers and any other compiler flags required for your distro, which is what the PkgConfig file contains.

1 Like

Hmm you’re right. I found an rpm from fedora.pkgs.org under Fedora 35 (my version) and installing this fixed it. For whatever reason the candidate selected for my system using dnf is lacking what you mentioned. Earlier a search in /usr/include for xpresent.h yielded no results until this manual install.

The rpm is libXpresent-devel-1.0.0-15.fc35.x86_64.rpm for anyone’s future reference. Thanks for the help gnif, and for the work creating this awesome tool.

On Fedora, if you ever come across build/configure errors like these:
Package 'xpresent', required by 'virtual:world', not found
You can install the required package with:
sudo dnf install 'pkgconfig(xpresent)'
Real time saver.

1 Like

That’s what I love about my experience with Linux: I never seem to stop learning new things. Big hat tip to you.