To run the driver without needing root permissions, follow these instructions starting from step 2 (the udev rules are installed by the package)
Search Criteria
Package Details: elgato-gchd-git r148.463e19f-1
Package Actions
| Git Clone URL: | https://aur.archlinux.org/elgato-gchd-git.git (read-only, click to copy) |
|---|---|
| Package Base: | elgato-gchd-git |
| Description: | Elgato Game Capture HD Driver |
| Upstream URL: | https://github.com/Sir-Boops/elgato-gchd |
| Licenses: | MIT |
| Conflicts: | elgato-gchd |
| Provides: | elgato-gchd |
| Submitter: | filand |
| Maintainer: | derivativeoflog7 |
| Last Packager: | derivativeoflog7 |
| Votes: | 0 |
| Popularity: | 0.000000 |
| First Submitted: | 2020-06-10 13:34 (UTC) |
| Last Updated: | 2025-10-21 17:35 (UTC) |
Dependencies (4)
- libusb (libusb-gitAUR)
- cmake (cmake3AUR, cmake-gitAUR) (make)
- git (git-gitAUR, git-glAUR) (make)
- p7zip (p7zip-full-binAUR, p7zip-natspecAUR, 7zip-natspecAUR, 7zip) (make)
Required by (0)
Sources (2)
Latest Comments
derivativeoflog7 commented on 2025-10-15 14:45 (UTC)
derivativeoflog7 commented on 2025-10-15 14:36 (UTC)
I've taken ownership of this package and updated it to fix build issues. @MarsSeed the issue is solved now.
MarsSeed commented on 2024-01-08 18:00 (UTC)
Fails to build:
==> Starting build()...
CMake Deprecation Warning at CMakeLists.txt:1 (CMAKE_MINIMUM_REQUIRED):
Compatibility with CMake < 3.5 will be removed from a future version of
CMake.
Update the VERSION argument <min> value or use a ...<max> suffix to tell
CMake that the project does not need compatibility with older versions.
-- The C compiler identification is GNU 13.2.1
-- The CXX compiler identification is GNU 13.2.1
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/lib/ccache/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/lib/ccache/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Found PkgConfig: /usr/bin/pkg-config (found version "2.1.0")
-- Checking for module 'libusb-1.0'
-- Found libusb-1.0, version 1.0.26
[...]
[ 86%] Building CXX object src/CMakeFiles/gchd.dir/gchd/psi_table_header.cpp.o
[ 91%] Building CXX object src/CMakeFiles/gchd.dir/gchd/settings.cpp.o
[ 95%] Building CXX object src/CMakeFiles/gchd.dir/gchd/transcoder.cpp.o
/var/cache/makepkg/elgato-gchd-git/src/elgato-gchd/src/gchd/settings.cpp:584:17: error: ‘uint32_t’ does not name a type
584 | uint32_t maxMacroBlocksPerSecond;
| ^~~~~~~~
/var/cache/makepkg/elgato-gchd-git/src/elgato-gchd/src/gchd/settings.cpp:13:1: note: ‘uint32_t’ is defined in header
‘<cstdint>’; did you forget to ‘#include <cstdint>’?
12 | #include <iomanip>
+++ |+#include <cstdint>
13 |
/var/cache/makepkg/elgato-gchd-git/src/elgato-gchd/src/gchd/settings.cpp:585:17: error: ‘uint32_t’ does not name a type
585 | uint32_t maxFrameMacroBlocks;
| ^~~~~~~~
/var/cache/makepkg/elgato-gchd-git/src/elgato-gchd/src/gchd/settings.cpp:585:17: note: ‘uint32_t’ is defined in header
‘<cstdint>’; did you forget to ‘#include <cstdint>’?
/var/cache/makepkg/elgato-gchd-git/src/elgato-gchd/src/gchd/settings.cpp:586:17: error: ‘uint32_t’ does not name a type
586 | uint32_t maxKBitrateProfile; //ordered based on what the profiles mean v_h264_profile
(theoretically)
| ^~~~~~~~
/var/cache/makepkg/elgato-gchd-git/src/elgato-gchd/src/gchd/settings.cpp:586:17: note: ‘uint32_t’ is defined in header
‘<cstdint>’; did you forget to ‘#include <cstdint>’?
/var/cache/makepkg/elgato-gchd-git/src/elgato-gchd/src/gchd/settings.cpp:609:1: error: too many initializers for ‘const
h264_level_description_t’
609 | };
| ^
/var/cache/makepkg/elgato-gchd-git/src/elgato-gchd/src/gchd/settings.cpp:611:34: error: ‘uint32_t’ was not declared in
this scope
611 | static float determineH264Level( uint32_t xRes, uint32_t yRes, float frameRate, uint32_t kbitRate )
| ^~~~~~~~
/var/cache/makepkg/elgato-gchd-git/src/elgato-gchd/src/gchd/settings.cpp:611:34: note: ‘uint32_t’ is defined in header
‘<cstdint>’; did you forget to ‘#include <cstdint>’?
/var/cache/makepkg/elgato-gchd-git/src/elgato-gchd/src/gchd/settings.cpp:611:49: error: ‘uint32_t’ was not declared in
this scope
611 | static float determineH264Level( uint32_t xRes, uint32_t yRes, float frameRate, uint32_t kbitRate )
| ^~~~~~~~
/var/cache/makepkg/elgato-gchd-git/src/elgato-gchd/src/gchd/settings.cpp:611:49: note: ‘uint32_t’ is defined in header
‘<cstdint>’; did you forget to ‘#include <cstdint>’?
/var/cache/makepkg/elgato-gchd-git/src/elgato-gchd/src/gchd/settings.cpp:611:64: error: expected primary-expression
before ‘float’
611 | static float determineH264Level( uint32_t xRes, uint32_t yRes, float frameRate, uint32_t kbitRate )
| ^~~~~
/var/cache/makepkg/elgato-gchd-git/src/elgato-gchd/src/gchd/settings.cpp:611:81: error: ‘uint32_t’ was not declared in
this scope
611 | static float determineH264Level( uint32_t xRes, uint32_t yRes, float frameRate, uint32_t kbitRate )
| ^~~~~~~~
/var/cache/makepkg/elgato-gchd-git/src/elgato-gchd/src/gchd/settings.cpp:611:81: note: ‘uint32_t’ is defined in header
‘<cstdint>’; did you forget to ‘#include <cstdint>’?
/var/cache/makepkg/elgato-gchd-git/src/elgato-gchd/src/gchd/settings.cpp:611:99: error: expression list treated as
compound expression in initializer [-fpermissive]
611 | static float determineH264Level( uint32_t xRes, uint32_t yRes, float frameRate, uint32_t kbitRate )
| ^
/var/cache/makepkg/elgato-gchd-git/src/elgato-gchd/src/gchd/settings.cpp: In member function ‘void
TranscoderSettings::mergeAutodetect(TranscoderSettings&, InputSettings&)’:
/var/cache/makepkg/elgato-gchd-git/src/elgato-gchd/src/gchd/settings.cpp:654:9: error: ‘uint32_t’ was not declared in
this scope
654 | uint32_t reasonableBitrate=int(31.25 * horizontal); //Seems to be what a lot of settings use.
| ^~~~~~~~
/var/cache/makepkg/elgato-gchd-git/src/elgato-gchd/src/gchd/settings.cpp:654:9: note: ‘uint32_t’ is defined in header
‘<cstdint>’; did you forget to ‘#include <cstdint>’?
/var/cache/makepkg/elgato-gchd-git/src/elgato-gchd/src/gchd/settings.cpp:657:48: error: ‘reasonableBitrate’ was not
declared in this scope
657 | unsigned autoBitrate = std::min(reasonableBitrate*1.0, highestBitrate );
| ^~~~~~~~~~~~~~~~~
/var/cache/makepkg/elgato-gchd-git/src/elgato-gchd/src/gchd/settings.cpp:671:46: error: ‘determineH264Level’ cannot be
used as a function
671 | h264Level_=determineH264Level( horizontal, vertical, frameRate, getRealMaxBitRateKbps() );
| ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
make[2]: *** [src/CMakeFiles/gchd.dir/build.make:356: src/CMakeFiles/gchd.dir/gchd/settings.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[1]: *** [CMakeFiles/Makefile2:98: src/CMakeFiles/gchd.dir/all] Error 2
make: *** [Makefile:136: all] Error 2
==> ERROR: A failure occurred in build().
Aborting...
-> error making: elgato-gchd-git
allexj commented on 2021-03-21 13:04 (UTC)
I can confirm that this works :)
Pinned Comments
derivativeoflog7 commented on 2025-10-15 14:45 (UTC)
To run the driver without needing root permissions, follow these instructions starting from step 2 (the udev rules are installed by the package)