[GH-ISSUE #868] error The XTest extension ... ‘XIEventMask’ ... on ./clean_build.sh #693

Closed
opened 2026-05-05 06:56:57 -06:00 by gitea-mirror · 9 comments
Owner

Originally created by @aljazzair on GitHub (Sep 7, 2020).
Original GitHub issue: https://github.com/debauchee/barrier/issues/868

Describe the bug
Build from source failed.

To Reproduce

Steps to reproduce the behavior:

  1. install dependencies
    groupinstall Development Tools
    epel-release cmake3 boost-static git libXtst-devel qt5-qtbase-devel qt5-qtdeclarative-devel libcurl-devel openssl-devel avahi-compat-libdns_sd-devel avahi-compat-libdns_sd libXtst-devel libX11-devel git cmake make gcc-c++ xorg-x11-server-devel libXtst-devel qt5 qt5-devel openssl-devel
    libdrm-devel libglvnd-devel libICE-devel libQt5Core-devel libQt5Gui-devel libQt5Network-devel libqt5-qtbase-common-devel libQt5Widgets-devel libSM-devel libXinerama-devel libXrandr-devel libXrender-devel

  2. git clone barrier

  3. ./clean_build.sh

  4. See error


In file included from /home/username/git/barrier/src/./lib/platform/XWindowsImpl.h:4,
                 from /home/username/git/barrier/src/./lib/platform/XWindowsScreen.h:25,
                 from /home/username/git/barrier/src/lib/barrier/ClientApp.cpp:48:
/home/username/git/barrier/src/./lib/platform/IXWindowsImpl.h:22:4: error: #error The XTest extension is required to build barrier
 #  error The XTest extension is required to build barrier
    ^~~~~
In file included from /home/username/git/barrier/src/./lib/platform/XWindowsImpl.h:4,
                 from /home/username/git/barrier/src/./lib/platform/XWindowsScreen.h:25,
                 from /home/username/git/barrier/src/lib/barrier/ClientApp.cpp:48:
/home/username/git/barrier/src/./lib/platform/IXWindowsImpl.h:187:60: error: ‘XIEventMask’ has not been declared
     virtual int XISelectEvents(Display* display, Window w, XIEventMask* masks,
                                                            ^~~~~~~~~~~
In file included from /home/username/git/barrier/src/./lib/platform/XWindowsScreen.h:25,
                 from /home/username/git/barrier/src/lib/barrier/ClientApp.cpp:48:
/home/username/git/barrier/src/./lib/platform/XWindowsImpl.h:148:60: error: ‘XIEventMask’ has not been declared
     virtual int XISelectEvents(Display* display, Window w, XIEventMask* masks,
                                                            ^~~~~~~~~~~
make[2]: *** [src/lib/barrier/CMakeFiles/synlib.dir/build.make:128: src/lib/barrier/CMakeFiles/synlib.dir/ClientApp.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:717: src/lib/barrier/CMakeFiles/synlib.dir/all] Error 2
make: *** [Makefile:152: all] Error 2

Expected behavior
./clean_build.sh completed successfully

Screenshots
If applicable, add screenshots to help explain your problem.

Please do not link to image hosting sites, as these can be ephemeral. Instead, attach them to the issue.

Desktop (please complete the following information):

  • OS: CentOS 8.1
  • Barrier version: git

Additional context

Add any other context about the problem here.

Originally created by @aljazzair on GitHub (Sep 7, 2020). Original GitHub issue: https://github.com/debauchee/barrier/issues/868 **Describe the bug** Build from source failed. **To Reproduce** Steps to reproduce the behavior: 1. install dependencies groupinstall Development Tools epel-release cmake3 boost-static git libXtst-devel qt5-qtbase-devel qt5-qtdeclarative-devel libcurl-devel openssl-devel avahi-compat-libdns_sd-devel avahi-compat-libdns_sd libXtst-devel libX11-devel git cmake make gcc-c++ xorg-x11-server-devel libXtst-devel qt5 qt5-devel openssl-devel libdrm-devel libglvnd-devel libICE-devel libQt5Core-devel libQt5Gui-devel libQt5Network-devel libqt5-qtbase-common-devel libQt5Widgets-devel libSM-devel libXinerama-devel libXrandr-devel libXrender-devel 2. git clone barrier 3. ./clean_build.sh 4. See error ``` In file included from /home/username/git/barrier/src/./lib/platform/XWindowsImpl.h:4, from /home/username/git/barrier/src/./lib/platform/XWindowsScreen.h:25, from /home/username/git/barrier/src/lib/barrier/ClientApp.cpp:48: /home/username/git/barrier/src/./lib/platform/IXWindowsImpl.h:22:4: error: #error The XTest extension is required to build barrier # error The XTest extension is required to build barrier ^~~~~ In file included from /home/username/git/barrier/src/./lib/platform/XWindowsImpl.h:4, from /home/username/git/barrier/src/./lib/platform/XWindowsScreen.h:25, from /home/username/git/barrier/src/lib/barrier/ClientApp.cpp:48: /home/username/git/barrier/src/./lib/platform/IXWindowsImpl.h:187:60: error: ‘XIEventMask’ has not been declared virtual int XISelectEvents(Display* display, Window w, XIEventMask* masks, ^~~~~~~~~~~ In file included from /home/username/git/barrier/src/./lib/platform/XWindowsScreen.h:25, from /home/username/git/barrier/src/lib/barrier/ClientApp.cpp:48: /home/username/git/barrier/src/./lib/platform/XWindowsImpl.h:148:60: error: ‘XIEventMask’ has not been declared virtual int XISelectEvents(Display* display, Window w, XIEventMask* masks, ^~~~~~~~~~~ make[2]: *** [src/lib/barrier/CMakeFiles/synlib.dir/build.make:128: src/lib/barrier/CMakeFiles/synlib.dir/ClientApp.cpp.o] Error 1 make[1]: *** [CMakeFiles/Makefile2:717: src/lib/barrier/CMakeFiles/synlib.dir/all] Error 2 make: *** [Makefile:152: all] Error 2 ``` **Expected behavior** ./clean_build.sh completed successfully **Screenshots** If applicable, add screenshots to help explain your problem. Please do not link to image hosting sites, as these can be ephemeral. Instead, attach them to the issue. **Desktop (please complete the following information):** - OS: CentOS 8.1 - Barrier version: git **Additional context** Add any other context about the problem here.
gitea-mirror 2026-05-05 06:56:57 -06:00
Author
Owner

@shymega commented on GitHub (Sep 12, 2020):

Trying to reproduce locally.

<!-- gh-comment-id:691527511 --> @shymega commented on GitHub (Sep 12, 2020): Trying to reproduce locally.
Author
Owner

@shymega commented on GitHub (Sep 12, 2020):

OK. I've tested this in Docker with CentOS 8, and can confirm it builds fine with the following dependencies installed. You will also need EPEL, RPM Fusion, and the PowerTools DNF configuration enabled. Once you have installed these dependencies, Barrier should build.

Dependencies install command is:

dnf install cmake3 avahi-compat-libdns_sd-devel libX11-devel libXtst-devel qt5-qtbase-devel libcurl-devel desktop-file-utils openssl-devel.

Also, don't forget: dnf groupinstall "Development Tools", and to enable PowerTools, you'll also need dnf install 'dnf-command(config-manager)' && dnf config-manager --set-enabled PowerTools.

If this doesn't work, then I don't know what to suggest. I cannot reproduce it here, so I would presume at that point that it is specific to your installation.

<!-- gh-comment-id:691532086 --> @shymega commented on GitHub (Sep 12, 2020): OK. I've tested this in Docker with CentOS 8, and can confirm it builds fine with the following dependencies installed. You will also need EPEL, RPM Fusion, and the PowerTools DNF configuration enabled. Once you have installed these dependencies, Barrier should build. Dependencies install command is: `dnf install cmake3 avahi-compat-libdns_sd-devel libX11-devel libXtst-devel qt5-qtbase-devel libcurl-devel desktop-file-utils openssl-devel`. Also, don't forget: `dnf groupinstall "Development Tools"`, and to enable PowerTools, you'll also need `dnf install 'dnf-command(config-manager)' && dnf config-manager --set-enabled PowerTools`. If this doesn't work, then I don't know what to suggest. I cannot reproduce it here, so I would presume _at that point_ that it is specific to your installation.
Author
Owner

@aljazzair commented on GitHub (Sep 15, 2020):

Hello,

Thank you for taking the time to review this report and test.

I have attempted this operation again after following your guidelines.

It seems there were a couple of typos in your suggested dependencies, please correct me if I am wrong:

dnf says no match for argument: avahi-compat-libdnd_sd-devel. I replaced it with:
avahi-compat-libdns_sd-devel

dnf says no match for argument: desktop-files-utils. I replaced it with:
desktop-file-utils

Please let me know if this is incorrect.

So here is what I did and the full result:

dnf install cmake3 avahi-compat-libdns_sd-devel libX11-devel libXtst-devel qt5-qtbase-devel libcurl-devel desktop-file-utils openssl-devel

Last metadata expiration check: 0:00:24 ago on Tue 15 Sep 2020 10:42:28 CET.
Package cmake-3.11.4-7.el8.x86_64 is already installed.
Package avahi-compat-libdns_sd-devel-0.7-19.el8.x86_64 is already installed.
Package libX11-devel-1.6.8-3.el8.x86_64 is already installed.
Package libXtst-devel-1.2.3-7.el8.x86_64 is already installed.
Package qt5-qtbase-devel-5.12.5-4.el8.x86_64 is already installed.
Package libcurl-devel-7.61.1-12.el8.x86_64 is already installed.
Package desktop-file-utils-0.23-8.el8.x86_64 is already installed.
Package openssl-devel-1:1.1.1c-15.el8.x86_64 is already installed.
Dependencies resolved.
Nothing to do.
Complete!

dnf groupinstall "Development Tools"

Last metadata expiration check: 0:01:07 ago on Tue 15 Sep 2020 10:42:28 CET.
Dependencies resolved.
===================================================================================================================================================================================================================
 Package                                            Architecture                                      Version                                             Repository                                          Size
===================================================================================================================================================================================================================
Installing Groups:
 Development Tools                                                                                                                                                                                                

Transaction Summary
===================================================================================================================================================================================================================

Is this ok [y/N]: y
Complete!

dnf install 'dnf-command(config-manager)' && dnf config-manager --set-enabled PowerTools

Last metadata expiration check: 0:01:36 ago on Tue 15 Sep 2020 10:42:28 CET.
Package dnf-plugins-core-4.0.12-3.el8.noarch is already installed.
Dependencies resolved.
Nothing to do.
Complete!

cd git

git clone https://github.com/debauchee/barrier.git

Cloning into 'barrier'...
remote: Enumerating objects: 67, done.
remote: Counting objects: 100% (67/67), done.
remote: Compressing objects: 100% (60/60), done.
remote: Total 38090 (delta 5), reused 61 (delta 5), pack-reused 38023
Receiving objects: 100% (38090/38090), 76.15 MiB | 910.00 KiB/s, done.
Resolving deltas: 100% (28921/28921), done.

cd barrier/

./clean_build.sh

Submodule 'ext/gmock' (https://github.com/google/googlemock.git) registered for path 'ext/gmock'
Submodule 'ext/gtest' (https://github.com/google/googletest.git) registered for path 'ext/gtest'
Cloning into '/home/username/git/barrier/ext/gmock'...
Cloning into '/home/username/git/barrier/ext/gtest'...
Submodule path 'ext/gmock': checked out '7d33fee11ec480beae4c28ad09ca56d974140a72'
Submodule path 'ext/gtest': checked out '800f5422ac9d9e0ad59cd860a2ef3a679588acb4'
Starting Barrier Debug build...
-- The C compiler identification is GNU 8.3.1
-- The CXX compiler identification is GNU 8.3.1
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Full Barrier version string is '2.3.3-release-release'
-- Found PkgConfig: /usr/bin/pkg-config (found version "1.4.2") 
-- Looking for C++ include istream
-- Looking for C++ include istream - found
-- Looking for C++ include ostream
-- Looking for C++ include ostream - found
-- Looking for C++ include sstream
-- Looking for C++ include sstream - found
-- Looking for include file inttypes.h
-- Looking for include file inttypes.h - found
-- Looking for include file locale.h
-- Looking for include file locale.h - found
-- Looking for include file memory.h
-- Looking for include file memory.h - found
-- Looking for include file stdlib.h
-- Looking for include file stdlib.h - found
-- Looking for include file strings.h
-- Looking for include file strings.h - found
-- Looking for include file string.h
-- Looking for include file string.h - found
-- Looking for include file sys/select.h
-- Looking for include file sys/select.h - found
-- Looking for include file sys/socket.h
-- Looking for include file sys/socket.h - found
-- Looking for include file sys/stat.h
-- Looking for include file sys/stat.h - found
-- Looking for include file sys/time.h
-- Looking for include file sys/time.h - found
-- Looking for include file sys/utsname.h
-- Looking for include file sys/utsname.h - found
-- Looking for include file unistd.h
-- Looking for include file unistd.h - found
-- Looking for include file wchar.h
-- Looking for include file wchar.h - found
-- Looking for getpwuid_r
-- Looking for getpwuid_r - found
-- Looking for gmtime_r
-- Looking for gmtime_r - found
-- Looking for nanosleep
-- Looking for nanosleep - found
-- Looking for poll
-- Looking for poll - found
-- Looking for sigwait
-- Looking for sigwait - found
-- Looking for strftime
-- Looking for strftime - found
-- Looking for vsnprintf
-- Looking for vsnprintf - found
-- Looking for inet_aton
-- Looking for inet_aton - found
-- Looking for sys/types.h
-- Looking for sys/types.h - found
-- Looking for stdint.h
-- Looking for stdint.h - found
-- Looking for stddef.h
-- Looking for stddef.h - found
-- Check size of char
-- Check size of char - done
-- Check size of int
-- Check size of int - done
-- Check size of long
-- Check size of long - done
-- Check size of short
-- Check size of short - done
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Looking for pthread_create
-- Looking for pthread_create - not found
-- Check if compiler accepts -pthread
-- Check if compiler accepts -pthread - yes
-- Found Threads: TRUE  
-- Found CURL: /usr/lib64/libcurl.so (found version "7.61.1") 
-- Checking for module 'avahi-compat-libdns_sd'
--   Found avahi-compat-libdns_sd, version 0.7
-- Check size of XRRNotifyEvent
-- Check size of XRRNotifyEvent - failed
-- Looking for 3 include files X11/Xlib.h, ..., X11/extensions/dpms.h
-- Looking for 3 include files X11/Xlib.h, ..., X11/extensions/dpms.h - found
-- Looking for include file X11/extensions/Xinerama.h
-- Looking for include file X11/extensions/Xinerama.h - not found
-- Looking for 3 include files X11/Xlib.h, ..., X11/extensions/XKBstr.h
-- Looking for 3 include files X11/Xlib.h, ..., X11/extensions/XKBstr.h - found
-- Looking for include file X11/extensions/XKB.h
-- Looking for include file X11/extensions/XKB.h - found
-- Looking for include file X11/extensions/XTest.h
-- Looking for include file X11/extensions/XTest.h - not found
-- Looking for include files X11/Xlib.h, X11/XKBlib.h
-- Looking for include files X11/Xlib.h, X11/XKBlib.h - found
-- Looking for include file X11/extensions/XInput2.h
-- Looking for include file X11/extensions/XInput2.h - not found
-- Looking for include file dns_sd.h
-- Looking for include file dns_sd.h - found
-- Looking for IceConnectionNumber in SM;ICE
-- Looking for IceConnectionNumber in SM;ICE - not found
-- Looking for DPMSQueryExtension in Xext;X11
-- Looking for DPMSQueryExtension in Xext;X11 - found
-- Looking for XTestQueryExtension in Xtst;Xext;X11
-- Looking for XTestQueryExtension in Xtst;Xext;X11 - found
-- Looking for XineramaQueryExtension in Xinerama
-- Looking for XineramaQueryExtension in Xinerama - not found
-- Looking for XISelectEvents in Xi
-- Looking for XISelectEvents in Xi - not found
-- Looking for XRRQueryExtension in Xrandr
-- Looking for XRRQueryExtension in Xrandr - not found
-- Configuring directory /home/username/git/barrier/build/rpm
-- Configuring file barrier.spec
-- Configuring done
-- Generating done
-- Build files have been written to: /home/username/git/barrier/build
Scanning dependencies of target arch
[  0%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/Arch.cpp.o
[  0%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/ArchConsoleStd.cpp.o
[  1%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/ArchDaemonNone.cpp.o
[  1%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/IArchString.cpp.o
[  2%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/unix/ArchConsoleUnix.cpp.o
[  2%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/unix/ArchDaemonUnix.cpp.o
[  3%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/unix/ArchInternetUnix.cpp.o
[  3%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/unix/ArchLogUnix.cpp.o
[  4%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/unix/ArchMultithreadPosix.cpp.o
[  4%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/unix/ArchNetworkBSD.cpp.o
[  5%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/unix/ArchSleepUnix.cpp.o
[  5%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/unix/ArchStringUnix.cpp.o
[  6%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/unix/ArchSystemUnix.cpp.o
[  6%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/unix/ArchTaskBarXWindows.cpp.o
[  7%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/unix/ArchTimeUnix.cpp.o
[  7%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/unix/XArchUnix.cpp.o
[  8%] Linking CXX static library libarch.a
[  8%] Built target arch
Scanning dependencies of target common
[  8%] Building CXX object src/lib/common/CMakeFiles/common.dir/DataDirectories_static.cpp.o
[  9%] Building CXX object src/lib/common/CMakeFiles/common.dir/PathUtilities.cpp.o
[  9%] Building CXX object src/lib/common/CMakeFiles/common.dir/Version.cpp.o
[ 10%] Building CXX object src/lib/common/CMakeFiles/common.dir/unix/DataDirectories.cpp.o
[ 10%] Linking CXX static library libcommon.a
[ 10%] Built target common
Scanning dependencies of target base
[ 10%] Building CXX object src/lib/base/CMakeFiles/base.dir/Event.cpp.o
[ 11%] Building CXX object src/lib/base/CMakeFiles/base.dir/EventQueue.cpp.o
[ 11%] Building CXX object src/lib/base/CMakeFiles/base.dir/EventTypes.cpp.o
[ 12%] Building CXX object src/lib/base/CMakeFiles/base.dir/FunctionEventJob.cpp.o
[ 12%] Building CXX object src/lib/base/CMakeFiles/base.dir/FunctionJob.cpp.o
[ 13%] Building CXX object src/lib/base/CMakeFiles/base.dir/Log.cpp.o
[ 13%] Building CXX object src/lib/base/CMakeFiles/base.dir/NonBlockingStream.cpp.o
[ 14%] Building CXX object src/lib/base/CMakeFiles/base.dir/SimpleEventQueueBuffer.cpp.o
[ 14%] Building CXX object src/lib/base/CMakeFiles/base.dir/Stopwatch.cpp.o
[ 15%] Building CXX object src/lib/base/CMakeFiles/base.dir/String.cpp.o
[ 15%] Building CXX object src/lib/base/CMakeFiles/base.dir/Unicode.cpp.o
[ 16%] Building CXX object src/lib/base/CMakeFiles/base.dir/XBase.cpp.o
[ 16%] Building CXX object src/lib/base/CMakeFiles/base.dir/log_outputters.cpp.o
[ 17%] Linking CXX static library libbase.a
[ 17%] Built target base
Scanning dependencies of target mt
[ 17%] Building CXX object src/lib/mt/CMakeFiles/mt.dir/CondVar.cpp.o
[ 18%] Building CXX object src/lib/mt/CMakeFiles/mt.dir/Lock.cpp.o
[ 18%] Building CXX object src/lib/mt/CMakeFiles/mt.dir/Mutex.cpp.o
[ 19%] Building CXX object src/lib/mt/CMakeFiles/mt.dir/Thread.cpp.o
[ 19%] Building CXX object src/lib/mt/CMakeFiles/mt.dir/XMT.cpp.o
[ 20%] Linking CXX static library libmt.a
[ 20%] Built target mt
Scanning dependencies of target io
[ 21%] Building CXX object src/lib/io/CMakeFiles/io.dir/StreamBuffer.cpp.o
[ 21%] Building CXX object src/lib/io/CMakeFiles/io.dir/StreamFilter.cpp.o
[ 21%] Building CXX object src/lib/io/CMakeFiles/io.dir/XIO.cpp.o
[ 22%] Linking CXX static library libio.a
[ 22%] Built target io
Scanning dependencies of target net
[ 22%] Building CXX object src/lib/net/CMakeFiles/net.dir/IDataSocket.cpp.o
[ 23%] Building CXX object src/lib/net/CMakeFiles/net.dir/NetworkAddress.cpp.o
[ 23%] Building CXX object src/lib/net/CMakeFiles/net.dir/SecureListenSocket.cpp.o
[ 24%] Building CXX object src/lib/net/CMakeFiles/net.dir/SecureSocket.cpp.o
[ 24%] Building CXX object src/lib/net/CMakeFiles/net.dir/SocketMultiplexer.cpp.o
[ 24%] Building CXX object src/lib/net/CMakeFiles/net.dir/TCPListenSocket.cpp.o
[ 25%] Building CXX object src/lib/net/CMakeFiles/net.dir/TCPSocket.cpp.o
[ 25%] Building CXX object src/lib/net/CMakeFiles/net.dir/TCPSocketFactory.cpp.o
[ 26%] Building CXX object src/lib/net/CMakeFiles/net.dir/XSocket.cpp.o
[ 26%] Linking CXX static library libnet.a
[ 26%] Built target net
Scanning dependencies of target synlib
[ 26%] Building CXX object src/lib/barrier/CMakeFiles/synlib.dir/App.cpp.o
[ 27%] Building CXX object src/lib/barrier/CMakeFiles/synlib.dir/AppUtil.cpp.o
[ 27%] Building CXX object src/lib/barrier/CMakeFiles/synlib.dir/ArgParser.cpp.o
[ 28%] Building CXX object src/lib/barrier/CMakeFiles/synlib.dir/ArgsBase.cpp.o
[ 28%] Building CXX object src/lib/barrier/CMakeFiles/synlib.dir/Chunk.cpp.o
[ 29%] Building CXX object src/lib/barrier/CMakeFiles/synlib.dir/ClientApp.cpp.o
In file included from /home/username/git/barrier/src/./lib/platform/XWindowsImpl.h:4,
                from /home/username/git/barrier/src/./lib/platform/XWindowsScreen.h:25,
                from /home/username/git/barrier/src/lib/barrier/ClientApp.cpp:48:
/home/username/git/barrier/src/./lib/platform/IXWindowsImpl.h:22:4: error: #error The XTest extension is required to build barrier
#  error The XTest extension is required to build barrier
   ^~~~~
In file included from /home/username/git/barrier/src/./lib/platform/XWindowsImpl.h:4,
                from /home/username/git/barrier/src/./lib/platform/XWindowsScreen.h:25,
                from /home/username/git/barrier/src/lib/barrier/ClientApp.cpp:48:
/home/username/git/barrier/src/./lib/platform/IXWindowsImpl.h:187:60: error: ‘XIEventMask’ has not been declared
    virtual int XISelectEvents(Display* display, Window w, XIEventMask* masks,
                                                           ^~~~~~~~~~~
In file included from /home/username/git/barrier/src/./lib/platform/XWindowsScreen.h:25,
                from /home/username/git/barrier/src/lib/barrier/ClientApp.cpp:48:
/home/username/git/barrier/src/./lib/platform/XWindowsImpl.h:148:60: error: ‘XIEventMask’ has not been declared
    virtual int XISelectEvents(Display* display, Window w, XIEventMask* masks,
                                                           ^~~~~~~~~~~
make[2]: *** [src/lib/barrier/CMakeFiles/synlib.dir/build.make:128: src/lib/barrier/CMakeFiles/synlib.dir/ClientApp.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:717: src/lib/barrier/CMakeFiles/synlib.dir/all] Error 2
make: *** [Makefile:152: all] Error 2
<!-- gh-comment-id:692615021 --> @aljazzair commented on GitHub (Sep 15, 2020): Hello, Thank you for taking the time to review this report and test. I have attempted this operation again after following your guidelines. It seems there were a couple of typos in your suggested dependencies, please correct me if I am wrong: dnf says _no match for argument: avahi-compat-libdnd_sd-devel_. I replaced it with: **avahi-compat-libdns_sd-devel** dnf says _no match for argument: desktop-files-utils_. I replaced it with: **desktop-file-utils** Please let me know if this is incorrect. So here is what I did and the full result: `dnf install cmake3 avahi-compat-libdns_sd-devel libX11-devel libXtst-devel qt5-qtbase-devel libcurl-devel desktop-file-utils openssl-devel` ``` Last metadata expiration check: 0:00:24 ago on Tue 15 Sep 2020 10:42:28 CET. Package cmake-3.11.4-7.el8.x86_64 is already installed. Package avahi-compat-libdns_sd-devel-0.7-19.el8.x86_64 is already installed. Package libX11-devel-1.6.8-3.el8.x86_64 is already installed. Package libXtst-devel-1.2.3-7.el8.x86_64 is already installed. Package qt5-qtbase-devel-5.12.5-4.el8.x86_64 is already installed. Package libcurl-devel-7.61.1-12.el8.x86_64 is already installed. Package desktop-file-utils-0.23-8.el8.x86_64 is already installed. Package openssl-devel-1:1.1.1c-15.el8.x86_64 is already installed. Dependencies resolved. Nothing to do. Complete! ``` `dnf groupinstall "Development Tools"` ``` Last metadata expiration check: 0:01:07 ago on Tue 15 Sep 2020 10:42:28 CET. Dependencies resolved. =================================================================================================================================================================================================================== Package Architecture Version Repository Size =================================================================================================================================================================================================================== Installing Groups: Development Tools Transaction Summary =================================================================================================================================================================================================================== Is this ok [y/N]: y Complete! ``` `dnf install 'dnf-command(config-manager)' && dnf config-manager --set-enabled PowerTools` ``` Last metadata expiration check: 0:01:36 ago on Tue 15 Sep 2020 10:42:28 CET. Package dnf-plugins-core-4.0.12-3.el8.noarch is already installed. Dependencies resolved. Nothing to do. Complete! ``` `cd git` `git clone https://github.com/debauchee/barrier.git` ``` Cloning into 'barrier'... remote: Enumerating objects: 67, done. remote: Counting objects: 100% (67/67), done. remote: Compressing objects: 100% (60/60), done. remote: Total 38090 (delta 5), reused 61 (delta 5), pack-reused 38023 Receiving objects: 100% (38090/38090), 76.15 MiB | 910.00 KiB/s, done. Resolving deltas: 100% (28921/28921), done. ``` ` cd barrier/` ` ./clean_build.sh` ``` Submodule 'ext/gmock' (https://github.com/google/googlemock.git) registered for path 'ext/gmock' Submodule 'ext/gtest' (https://github.com/google/googletest.git) registered for path 'ext/gtest' Cloning into '/home/username/git/barrier/ext/gmock'... Cloning into '/home/username/git/barrier/ext/gtest'... Submodule path 'ext/gmock': checked out '7d33fee11ec480beae4c28ad09ca56d974140a72' Submodule path 'ext/gtest': checked out '800f5422ac9d9e0ad59cd860a2ef3a679588acb4' Starting Barrier Debug build... -- The C compiler identification is GNU 8.3.1 -- The CXX compiler identification is GNU 8.3.1 -- Check for working C compiler: /usr/bin/cc -- Check for working C compiler: /usr/bin/cc -- works -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Detecting C compile features -- Detecting C compile features - done -- Check for working CXX compiler: /usr/bin/c++ -- Check for working CXX compiler: /usr/bin/c++ -- works -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Detecting CXX compile features -- Detecting CXX compile features - done -- Full Barrier version string is '2.3.3-release-release' -- Found PkgConfig: /usr/bin/pkg-config (found version "1.4.2") -- Looking for C++ include istream -- Looking for C++ include istream - found -- Looking for C++ include ostream -- Looking for C++ include ostream - found -- Looking for C++ include sstream -- Looking for C++ include sstream - found -- Looking for include file inttypes.h -- Looking for include file inttypes.h - found -- Looking for include file locale.h -- Looking for include file locale.h - found -- Looking for include file memory.h -- Looking for include file memory.h - found -- Looking for include file stdlib.h -- Looking for include file stdlib.h - found -- Looking for include file strings.h -- Looking for include file strings.h - found -- Looking for include file string.h -- Looking for include file string.h - found -- Looking for include file sys/select.h -- Looking for include file sys/select.h - found -- Looking for include file sys/socket.h -- Looking for include file sys/socket.h - found -- Looking for include file sys/stat.h -- Looking for include file sys/stat.h - found -- Looking for include file sys/time.h -- Looking for include file sys/time.h - found -- Looking for include file sys/utsname.h -- Looking for include file sys/utsname.h - found -- Looking for include file unistd.h -- Looking for include file unistd.h - found -- Looking for include file wchar.h -- Looking for include file wchar.h - found -- Looking for getpwuid_r -- Looking for getpwuid_r - found -- Looking for gmtime_r -- Looking for gmtime_r - found -- Looking for nanosleep -- Looking for nanosleep - found -- Looking for poll -- Looking for poll - found -- Looking for sigwait -- Looking for sigwait - found -- Looking for strftime -- Looking for strftime - found -- Looking for vsnprintf -- Looking for vsnprintf - found -- Looking for inet_aton -- Looking for inet_aton - found -- Looking for sys/types.h -- Looking for sys/types.h - found -- Looking for stdint.h -- Looking for stdint.h - found -- Looking for stddef.h -- Looking for stddef.h - found -- Check size of char -- Check size of char - done -- Check size of int -- Check size of int - done -- Check size of long -- Check size of long - done -- Check size of short -- Check size of short - done -- Looking for pthread.h -- Looking for pthread.h - found -- Looking for pthread_create -- Looking for pthread_create - not found -- Check if compiler accepts -pthread -- Check if compiler accepts -pthread - yes -- Found Threads: TRUE -- Found CURL: /usr/lib64/libcurl.so (found version "7.61.1") -- Checking for module 'avahi-compat-libdns_sd' -- Found avahi-compat-libdns_sd, version 0.7 -- Check size of XRRNotifyEvent -- Check size of XRRNotifyEvent - failed -- Looking for 3 include files X11/Xlib.h, ..., X11/extensions/dpms.h -- Looking for 3 include files X11/Xlib.h, ..., X11/extensions/dpms.h - found -- Looking for include file X11/extensions/Xinerama.h -- Looking for include file X11/extensions/Xinerama.h - not found -- Looking for 3 include files X11/Xlib.h, ..., X11/extensions/XKBstr.h -- Looking for 3 include files X11/Xlib.h, ..., X11/extensions/XKBstr.h - found -- Looking for include file X11/extensions/XKB.h -- Looking for include file X11/extensions/XKB.h - found -- Looking for include file X11/extensions/XTest.h -- Looking for include file X11/extensions/XTest.h - not found -- Looking for include files X11/Xlib.h, X11/XKBlib.h -- Looking for include files X11/Xlib.h, X11/XKBlib.h - found -- Looking for include file X11/extensions/XInput2.h -- Looking for include file X11/extensions/XInput2.h - not found -- Looking for include file dns_sd.h -- Looking for include file dns_sd.h - found -- Looking for IceConnectionNumber in SM;ICE -- Looking for IceConnectionNumber in SM;ICE - not found -- Looking for DPMSQueryExtension in Xext;X11 -- Looking for DPMSQueryExtension in Xext;X11 - found -- Looking for XTestQueryExtension in Xtst;Xext;X11 -- Looking for XTestQueryExtension in Xtst;Xext;X11 - found -- Looking for XineramaQueryExtension in Xinerama -- Looking for XineramaQueryExtension in Xinerama - not found -- Looking for XISelectEvents in Xi -- Looking for XISelectEvents in Xi - not found -- Looking for XRRQueryExtension in Xrandr -- Looking for XRRQueryExtension in Xrandr - not found -- Configuring directory /home/username/git/barrier/build/rpm -- Configuring file barrier.spec -- Configuring done -- Generating done -- Build files have been written to: /home/username/git/barrier/build Scanning dependencies of target arch [ 0%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/Arch.cpp.o [ 0%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/ArchConsoleStd.cpp.o [ 1%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/ArchDaemonNone.cpp.o [ 1%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/IArchString.cpp.o [ 2%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/unix/ArchConsoleUnix.cpp.o [ 2%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/unix/ArchDaemonUnix.cpp.o [ 3%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/unix/ArchInternetUnix.cpp.o [ 3%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/unix/ArchLogUnix.cpp.o [ 4%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/unix/ArchMultithreadPosix.cpp.o [ 4%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/unix/ArchNetworkBSD.cpp.o [ 5%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/unix/ArchSleepUnix.cpp.o [ 5%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/unix/ArchStringUnix.cpp.o [ 6%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/unix/ArchSystemUnix.cpp.o [ 6%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/unix/ArchTaskBarXWindows.cpp.o [ 7%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/unix/ArchTimeUnix.cpp.o [ 7%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/unix/XArchUnix.cpp.o [ 8%] Linking CXX static library libarch.a [ 8%] Built target arch Scanning dependencies of target common [ 8%] Building CXX object src/lib/common/CMakeFiles/common.dir/DataDirectories_static.cpp.o [ 9%] Building CXX object src/lib/common/CMakeFiles/common.dir/PathUtilities.cpp.o [ 9%] Building CXX object src/lib/common/CMakeFiles/common.dir/Version.cpp.o [ 10%] Building CXX object src/lib/common/CMakeFiles/common.dir/unix/DataDirectories.cpp.o [ 10%] Linking CXX static library libcommon.a [ 10%] Built target common Scanning dependencies of target base [ 10%] Building CXX object src/lib/base/CMakeFiles/base.dir/Event.cpp.o [ 11%] Building CXX object src/lib/base/CMakeFiles/base.dir/EventQueue.cpp.o [ 11%] Building CXX object src/lib/base/CMakeFiles/base.dir/EventTypes.cpp.o [ 12%] Building CXX object src/lib/base/CMakeFiles/base.dir/FunctionEventJob.cpp.o [ 12%] Building CXX object src/lib/base/CMakeFiles/base.dir/FunctionJob.cpp.o [ 13%] Building CXX object src/lib/base/CMakeFiles/base.dir/Log.cpp.o [ 13%] Building CXX object src/lib/base/CMakeFiles/base.dir/NonBlockingStream.cpp.o [ 14%] Building CXX object src/lib/base/CMakeFiles/base.dir/SimpleEventQueueBuffer.cpp.o [ 14%] Building CXX object src/lib/base/CMakeFiles/base.dir/Stopwatch.cpp.o [ 15%] Building CXX object src/lib/base/CMakeFiles/base.dir/String.cpp.o [ 15%] Building CXX object src/lib/base/CMakeFiles/base.dir/Unicode.cpp.o [ 16%] Building CXX object src/lib/base/CMakeFiles/base.dir/XBase.cpp.o [ 16%] Building CXX object src/lib/base/CMakeFiles/base.dir/log_outputters.cpp.o [ 17%] Linking CXX static library libbase.a [ 17%] Built target base Scanning dependencies of target mt [ 17%] Building CXX object src/lib/mt/CMakeFiles/mt.dir/CondVar.cpp.o [ 18%] Building CXX object src/lib/mt/CMakeFiles/mt.dir/Lock.cpp.o [ 18%] Building CXX object src/lib/mt/CMakeFiles/mt.dir/Mutex.cpp.o [ 19%] Building CXX object src/lib/mt/CMakeFiles/mt.dir/Thread.cpp.o [ 19%] Building CXX object src/lib/mt/CMakeFiles/mt.dir/XMT.cpp.o [ 20%] Linking CXX static library libmt.a [ 20%] Built target mt Scanning dependencies of target io [ 21%] Building CXX object src/lib/io/CMakeFiles/io.dir/StreamBuffer.cpp.o [ 21%] Building CXX object src/lib/io/CMakeFiles/io.dir/StreamFilter.cpp.o [ 21%] Building CXX object src/lib/io/CMakeFiles/io.dir/XIO.cpp.o [ 22%] Linking CXX static library libio.a [ 22%] Built target io Scanning dependencies of target net [ 22%] Building CXX object src/lib/net/CMakeFiles/net.dir/IDataSocket.cpp.o [ 23%] Building CXX object src/lib/net/CMakeFiles/net.dir/NetworkAddress.cpp.o [ 23%] Building CXX object src/lib/net/CMakeFiles/net.dir/SecureListenSocket.cpp.o [ 24%] Building CXX object src/lib/net/CMakeFiles/net.dir/SecureSocket.cpp.o [ 24%] Building CXX object src/lib/net/CMakeFiles/net.dir/SocketMultiplexer.cpp.o [ 24%] Building CXX object src/lib/net/CMakeFiles/net.dir/TCPListenSocket.cpp.o [ 25%] Building CXX object src/lib/net/CMakeFiles/net.dir/TCPSocket.cpp.o [ 25%] Building CXX object src/lib/net/CMakeFiles/net.dir/TCPSocketFactory.cpp.o [ 26%] Building CXX object src/lib/net/CMakeFiles/net.dir/XSocket.cpp.o [ 26%] Linking CXX static library libnet.a [ 26%] Built target net Scanning dependencies of target synlib [ 26%] Building CXX object src/lib/barrier/CMakeFiles/synlib.dir/App.cpp.o [ 27%] Building CXX object src/lib/barrier/CMakeFiles/synlib.dir/AppUtil.cpp.o [ 27%] Building CXX object src/lib/barrier/CMakeFiles/synlib.dir/ArgParser.cpp.o [ 28%] Building CXX object src/lib/barrier/CMakeFiles/synlib.dir/ArgsBase.cpp.o [ 28%] Building CXX object src/lib/barrier/CMakeFiles/synlib.dir/Chunk.cpp.o [ 29%] Building CXX object src/lib/barrier/CMakeFiles/synlib.dir/ClientApp.cpp.o In file included from /home/username/git/barrier/src/./lib/platform/XWindowsImpl.h:4, from /home/username/git/barrier/src/./lib/platform/XWindowsScreen.h:25, from /home/username/git/barrier/src/lib/barrier/ClientApp.cpp:48: /home/username/git/barrier/src/./lib/platform/IXWindowsImpl.h:22:4: error: #error The XTest extension is required to build barrier # error The XTest extension is required to build barrier ^~~~~ In file included from /home/username/git/barrier/src/./lib/platform/XWindowsImpl.h:4, from /home/username/git/barrier/src/./lib/platform/XWindowsScreen.h:25, from /home/username/git/barrier/src/lib/barrier/ClientApp.cpp:48: /home/username/git/barrier/src/./lib/platform/IXWindowsImpl.h:187:60: error: ‘XIEventMask’ has not been declared virtual int XISelectEvents(Display* display, Window w, XIEventMask* masks, ^~~~~~~~~~~ In file included from /home/username/git/barrier/src/./lib/platform/XWindowsScreen.h:25, from /home/username/git/barrier/src/lib/barrier/ClientApp.cpp:48: /home/username/git/barrier/src/./lib/platform/XWindowsImpl.h:148:60: error: ‘XIEventMask’ has not been declared virtual int XISelectEvents(Display* display, Window w, XIEventMask* masks, ^~~~~~~~~~~ make[2]: *** [src/lib/barrier/CMakeFiles/synlib.dir/build.make:128: src/lib/barrier/CMakeFiles/synlib.dir/ClientApp.cpp.o] Error 1 make[1]: *** [CMakeFiles/Makefile2:717: src/lib/barrier/CMakeFiles/synlib.dir/all] Error 2 make: *** [Makefile:152: all] Error 2 ```
Author
Owner

@aljazzair commented on GitHub (Sep 15, 2020):

Given the error message above, I also checked the XTEST extension status using the commands:

journalctl -b0 | grep -e XTEST

Sep 15 12:58:22 myservername /usr/libexec/gdm-x-session[5928]: (II) Initializing extension XTEST

xdpyinfo

name of display:    :0
version number:    11.0
vendor string:    The X.Org Foundation
vendor release number:    12006000
X.Org version: 1.20.6
maximum request size:  16777212 bytes
motion buffer size:  256
bitmap unit, bit order, padding:    32, LSBFirst, 32
image byte order:    LSBFirst
number of supported pixmap formats:    7
supported pixmap formats:
    depth 1, bits_per_pixel 1, scanline_pad 32
    depth 4, bits_per_pixel 8, scanline_pad 32
    depth 8, bits_per_pixel 8, scanline_pad 32
    depth 15, bits_per_pixel 16, scanline_pad 32
    depth 16, bits_per_pixel 16, scanline_pad 32
    depth 24, bits_per_pixel 32, scanline_pad 32
    depth 32, bits_per_pixel 32, scanline_pad 32
keycode range:    minimum 8, maximum 255
focus:  window 0x2800007, revert to Parent
number of extensions:    27
    BIG-REQUESTS
    Composite
    DAMAGE
    DOUBLE-BUFFER
    DPMS
    DRI2
    DRI3
    GLX
    Generic Event Extension
    MIT-SCREEN-SAVER
    MIT-SHM
    Present
    RANDR
    RECORD
    RENDER
    SHAPE
    SYNC
    X-Resource
    XC-MISC
    XFIXES
    XFree86-DGA
    XFree86-VidModeExtension
    XINERAMA
    XInputExtension
    XKEYBOARD
    ****XTEST****
    XVideo
default screen number:    0
(...)
<!-- gh-comment-id:692674266 --> @aljazzair commented on GitHub (Sep 15, 2020): Given the error message above, I also checked the XTEST extension status using the commands: `journalctl -b0 | grep -e XTEST` `Sep 15 12:58:22 myservername /usr/libexec/gdm-x-session[5928]: (II) Initializing extension XTEST` `xdpyinfo` ``` name of display: :0 version number: 11.0 vendor string: The X.Org Foundation vendor release number: 12006000 X.Org version: 1.20.6 maximum request size: 16777212 bytes motion buffer size: 256 bitmap unit, bit order, padding: 32, LSBFirst, 32 image byte order: LSBFirst number of supported pixmap formats: 7 supported pixmap formats: depth 1, bits_per_pixel 1, scanline_pad 32 depth 4, bits_per_pixel 8, scanline_pad 32 depth 8, bits_per_pixel 8, scanline_pad 32 depth 15, bits_per_pixel 16, scanline_pad 32 depth 16, bits_per_pixel 16, scanline_pad 32 depth 24, bits_per_pixel 32, scanline_pad 32 depth 32, bits_per_pixel 32, scanline_pad 32 keycode range: minimum 8, maximum 255 focus: window 0x2800007, revert to Parent number of extensions: 27 BIG-REQUESTS Composite DAMAGE DOUBLE-BUFFER DPMS DRI2 DRI3 GLX Generic Event Extension MIT-SCREEN-SAVER MIT-SHM Present RANDR RECORD RENDER SHAPE SYNC X-Resource XC-MISC XFIXES XFree86-DGA XFree86-VidModeExtension XINERAMA XInputExtension XKEYBOARD ****XTEST**** XVideo default screen number: 0 (...) ```
Author
Owner

@aljazzair commented on GitHub (Sep 15, 2020):

Also tried this:

find / -name "XTest.h"

/usr/include/X11/extensions/XTest.h

find / -name "libXtst.so*"

/usr/lib64/libXtst.so.6.1.0

<!-- gh-comment-id:692685187 --> @aljazzair commented on GitHub (Sep 15, 2020): Also tried this: `find / -name "XTest.h"` `/usr/include/X11/extensions/XTest.h` `find / -name "libXtst.so*"` `/usr/lib64/libXtst.so.6.1.0`
Author
Owner

@aljazzair commented on GitHub (Sep 15, 2020):

And permissions:

ll /usr/include/X11/extensions/XTest.h

rw-r--r-- 1 root root 3 KiB Tue May 14 03:15:27 2019 XTest.h

ll /usr/lib64/libXtst.so.6.1.0

rwxr-xr-x 1 root root 28 KiB Tue May 14 03:15:28 2019 libXtst.so.6.1.0

<!-- gh-comment-id:692687788 --> @aljazzair commented on GitHub (Sep 15, 2020): And permissions: ` ll /usr/include/X11/extensions/XTest.h` `rw-r--r-- 1 root root 3 KiB Tue May 14 03:15:27 2019 XTest.h ` `ll /usr/lib64/libXtst.so.6.1.0` `rwxr-xr-x 1 root root 28 KiB Tue May 14 03:15:28 2019 libXtst.so.6.1.0 `
Author
Owner

@shymega commented on GitHub (Sep 15, 2020):

You are quite correct; I did make a typo. I've fixed it now. May I just say that its very refreshing to see such a comprehensive bug report from yourself; its not often I see that, and you've certainly gone 'above and beyond' there. Thanks!

Interesting that its still refusing to compile, however. I don't know what to suggest. As I say, it compiles fine on my CentOS 8 container, haven't tried a VM yet.. and my internet is limited, so downloading a full CentOS 8 VM wouldn't be ideal.

I don't quite understand why X11 is reporting that XTEST does exist, yet cmake is not detecting it. How very odd... am I right in thinking that CentOS doesn't package Barrier? I'm curious as to why you're wanting to compile from git/tarball, that's all.

Keep me updated 👍

<!-- gh-comment-id:692765085 --> @shymega commented on GitHub (Sep 15, 2020): You are quite correct; I did make a typo. I've fixed it now. May I just say that its _very_ refreshing to see such a comprehensive bug report from yourself; its not often I see that, and you've certainly gone 'above and beyond' there. Thanks! Interesting that its still refusing to compile, however. I don't know what to suggest. As I say, it compiles fine on my CentOS 8 container, haven't tried a VM yet.. and my internet is limited, so downloading a full CentOS 8 VM wouldn't be ideal. I don't quite understand why X11 is reporting that `XTEST` _does_ exist, yet cmake is not detecting it. How very odd... am I right in thinking that CentOS doesn't package Barrier? I'm curious as to why you're wanting to compile from git/tarball, that's all. Keep me updated :+1:
Author
Owner

@aljazzair commented on GitHub (Sep 16, 2020):

Hello

Thank you for taking the time to review this report.

My exact version of Centos is:

cat /etc/centos-release
CentOS Linux release 8.2.2004 (Core)

There is a previous version available via dnf as follows:
(found it under issue #668 )

dnf install barrier
firmware for qemu, built by jenkins, fresh from git repos                               9.4 kB/s | 2.9 kB     00:00
Package barrier-2.3.2-1.el8.x86_64 is already installed.
Dependencies resolved.
Nothing to do.
Complete!

As you can see this is not the latest version. Unfortunately there is a bug in this version, a memory leak I suspect, that causes a crash of the server when the client disconnects.

There is a more recent version of Barrier available through Snap, however its installation requires a lot of dependencies (several hundred mbs as I recall), it takes up too much space on my SSD :)

So I was trying to compile the latest version of Barrier in the hope of fixing this with a build from git that I could update regularly.

I must say I am not quite used to compiling builds. My scarce knowledge leads me to suspect some kind of PATH issue, but I am reaching the limits of what I can find out on my own :)

Any suggestion on a possible resolution would be most welcome.

<!-- gh-comment-id:693725395 --> @aljazzair commented on GitHub (Sep 16, 2020): Hello Thank you for taking the time to review this report. My exact version of Centos is: ``` cat /etc/centos-release CentOS Linux release 8.2.2004 (Core) ``` There is a previous version available via dnf as follows: (found it under issue #668 ) ``` dnf install barrier firmware for qemu, built by jenkins, fresh from git repos 9.4 kB/s | 2.9 kB 00:00 Package barrier-2.3.2-1.el8.x86_64 is already installed. Dependencies resolved. Nothing to do. Complete! ``` As you can see this is not the latest version. Unfortunately there is a bug in this version, a memory leak I suspect, that causes a crash of the server when the client disconnects. There is a more recent version of Barrier available through Snap, however its installation requires a lot of dependencies (several hundred mbs as I recall), it takes up too much space on my SSD :) So I was trying to compile the latest version of Barrier in the hope of fixing this with a build from git that I could update regularly. I must say I am not quite used to compiling builds. My scarce knowledge leads me to suspect some kind of PATH issue, but I am reaching the limits of what I can find out on my own :) Any suggestion on a possible resolution would be most welcome.
Author
Owner

@aljazzair commented on GitHub (Sep 18, 2020):

Resolved this issue.

TL/DR: had to reinstall a dependency

dnf reinstall libXi-devel


In case someone stumbles upon this report, documenting the resolution path:

First let's create a simple one liner test to determine where the issue is coming from.

nano test.cpp

#include <X11/extensions/XTest.h>

Run the following command to test:

g++ test.cpp

Result:

In file included from test.cpp:1:
/usr/include/X11/extensions/XTest.h:32:10: fatal error: X11/extensions/XInput.h: No such file or directory
 #include <X11/extensions/XInput.h>
          ^~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.

So the problem was further identified:

find / -name "XInput.h"

No results.

Then:

rpm -q --whatprovides /usr/include/X11/extensions/XInput.h

libXi-devel-1.7.9-7.el8.x86_64

So a library normally provided by libXi-devel is AWOL.

Hence:

dnf reinstall libXi-devel

then

git clone https://github.com/debauchee/barrier.git

./clean_build.sh

(...)
[ 99%] Building CXX object src/gui/CMakeFiles/barrier.dir/barrier_autogen/PNK5WDWK6L/qrc_Barrier.cpp.o
[100%] Linking CXX executable ../../bin/barrier
[100%] Built target barrier
**Build completed successfully**

Closing this issue.

<!-- gh-comment-id:694877534 --> @aljazzair commented on GitHub (Sep 18, 2020): Resolved this issue. TL/DR: had to reinstall a dependency `dnf reinstall libXi-devel` ----------- In case someone stumbles upon this report, documenting the resolution path: First let's create a simple one liner test to determine where the issue is coming from. `nano test.cpp` `#include <X11/extensions/XTest.h>` Run the following command to test: `g++ test.cpp` Result: ``` In file included from test.cpp:1: /usr/include/X11/extensions/XTest.h:32:10: fatal error: X11/extensions/XInput.h: No such file or directory #include <X11/extensions/XInput.h> ^~~~~~~~~~~~~~~~~~~~~~~~~ compilation terminated. ``` So the problem was further identified: `find / -name "XInput.h"` **No results.** Then: `rpm -q --whatprovides /usr/include/X11/extensions/XInput.h` `libXi-devel-1.7.9-7.el8.x86_64` **So a library normally provided by libXi-devel is AWOL.** Hence: `dnf reinstall libXi-devel` then `git clone https://github.com/debauchee/barrier.git` `./clean_build.sh` ``` (...) [ 99%] Building CXX object src/gui/CMakeFiles/barrier.dir/barrier_autogen/PNK5WDWK6L/qrc_Barrier.cpp.o [100%] Linking CXX executable ../../bin/barrier [100%] Built target barrier **Build completed successfully** ``` Closing this issue.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: github-starred/barrier#693
No description provided.