Error while building (libinput.h: No such file)
Closed this issue · 10 comments
OS: OpenSUSE Tumbleweed
Installed latest Hyprland from git
Full log: pastebin.com/LLdKVXtF
Maybe this should be a separate issue, but I want to mention that I also can't compile with the latest Hyprland https://github.com/hyprwm/Hyprland/tree/cbadf3e3f31ab5ad5d192daac5f2ca930d08b8fb:
error: 'class CCompositor' has no member named 'windowFromCursor'
Although I was able to compile with Hyprland v0.34.0
Logs (NixOs)
../src/globaleventhook.cpp: In function 'bool isKeyReleaseToggleExitOverviewHit(wlr_keyboard_key_event*, SKeyboard*)': ../src/globaleventhook.cpp:39:121: warning: comparison of integer expressions of different signedness: 'int' and 'uint32_t' {aka 'unsigned int'} [-Wsign-compare ] 39 | if (isNumber(g_hycov_alt_replace_key) && std::stoi(g_hycov_alt_replace_key) > 9 && std::stoi(g_hycov_alt_replace_key) == (e->keycode + 8)) { | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~ ../src/globaleventhook.cpp:41:152: warning: comparison of integer expressions of different signedness: 'int' and 'uint32_t' {aka 'unsigned int'} [-Wsign-compare ] 41 | } else if (g_hycov_alt_replace_key.find("code:") == 0 && isNumber(g_hycov_alt_replace_key.substr(5)) && std::stoi(g_hycov_alt_replace_key.substr(5)) = = (e->keycode + 8)) { | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ ~~~~~~~~~~~~~~~~~~ ../src/globaleventhook.cpp: In function 'void hkCInputManager_onMouseButton(void*, wlr_pointer_button_event*)': ../src/globaleventhook.cpp:149:44: error: 'class CCompositor' has no member named 'windowFromCursor' 149 | CWindow *pClickWindow = g_pCompositor->windowFromCursor(); | ^~~~~~~~~~~~~~~~ ../src/globaleventhook.cpp: In function 'void registerGlobalEventHook()': ../src/globaleventhook.cpp:318:79: warning: converting from 'void (CInputManager::*)(wlr_pointer_swipe_begin_event*)' to 'void*' [-Wpmf-conversions] 318 | g_hycov_pOnSwipeBeginHook = HyprlandAPI::createFunctionHook(PHANDLE, (void*)&CInputManager::onSwipeBegin, (void*)&hkOnSwipeBegin); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../src/globaleventhook.cpp:319:77: warning: converting from 'void (CInputManager::*)(wlr_pointer_swipe_end_event*)' to 'void*' [-Wpmf-conversions] 319 | g_hycov_pOnSwipeEndHook = HyprlandAPI::createFunctionHook(PHANDLE, (void*)&CInputManager::onSwipeEnd, (void*)&hkOnSwipeEnd); | ^~~~~~~~~~~~~~~~~~~~~~~~~~ ../src/globaleventhook.cpp:320:80: warning: converting from 'void (CInputManager::*)(wlr_pointer_swipe_update_event*)' to 'void*' [-Wpmf-conversions] 320 | g_hycov_pOnSwipeUpdateHook = HyprlandAPI::createFunctionHook(PHANDLE, (void*)&CInputManager::onSwipeUpdate, (void*)&hkOnSwipeUpdate); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../src/globaleventhook.cpp:323:78: warning: converting from 'void (CWindow::*)()' to 'void*' [-Wpmf-conversions] 323 | g_hycov_pCWindow_onUnmap = HyprlandAPI::createFunctionHook(PHANDLE, (void*)&CWindow::onUnmap, (void*)&hkCWindow_onUnmap); | ^~~~~~~~~~~~~~~~~ ../src/globaleventhook.cpp:326:76: warning: converting from 'void (CWorkspace::*)(bool, bool, bool)' to 'void*' [-Wpmf-conversions] 326 | g_hycov_pStartAnimHook = HyprlandAPI::createFunctionHook(PHANDLE, (void*)&CWorkspace::startAnim, (void*)&hkStartAnim); | ^~~~~~~~~~~~~~~~~~~~~~ ../src/globaleventhook.cpp:330:80: warning: converting from 'void (CInputManager::*)(wlr_keyboard_key_event*, SKeyboard*)' to 'void*' [-Wpmf-conversions] 330 | g_hycov_pOnKeyboardKeyHook = HyprlandAPI::createFunctionHook(PHANDLE, (void*)&CInputManager::onKeyboardKey, (void*)&hkOnKeyboardKey); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../src/globaleventhook.cpp:333:99: warning: converting from 'void (CHyprDwindleLayout::*)(const int&)' to 'void*' [-Wpmf-conversions] 333 | g_hycov_pHyprDwindleLayout_recalculateMonitor = HyprlandAPI::createFunctionHook(PHANDLE, (void*)&CHyprDwindleLayout::recalculateMonitor, (void*)&hkHyp rDwindleLayout_recalculateMonitor); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../src/globaleventhook.cpp:334:98: warning: converting from 'void (CHyprMasterLayout::*)(const int&)' to 'void*' [-Wpmf-conversions] 334 | g_hycov_pHyprMasterLayout_recalculateMonitor = HyprlandAPI::createFunctionHook(PHANDLE, (void*)&CHyprMasterLayout::recalculateMonitor, (void*)&hkHyprM asterLayout_recalculateMonitor); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../src/globaleventhook.cpp:335:98: warning: converting from 'void (CHyprDwindleLayout::*)(CWindow*)' to 'void*' [-Wpmf-conversions] 335 | g_hycov_pHyprDwindleLayout_recalculateWindow = HyprlandAPI::createFunctionHook(PHANDLE, (void*)&CHyprDwindleLayout::recalculateWindow, (void*)&hkHyprD windleLayout_recalculateWindow); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../src/globaleventhook.cpp:336:102: warning: converting from 'void (SDwindleNodeData::*)(bool, bool, bool)' to 'void*' [-Wpmf-conversions] 336 | g_hycov_pSDwindleNodeData_recalcSizePosRecursive = HyprlandAPI::createFunctionHook(PHANDLE, (void*)&SDwindleNodeData::recalcSizePosRecursive, (void*)& hkSDwindleNodeData_recalcSizePosRecursive); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../src/globaleventhook.cpp:340:90: warning: converting from 'void (CInputManager::*)(wlr_pointer_button_event*)' to 'void*' [-Wpmf-conversions] 340 | g_hycov_pCInputManager_onMouseButton = HyprlandAPI::createFunctionHook(PHANDLE, (void*)&CInputManager::onMouseButton, (void*)&hkCInputManager_onMouseB utton); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [2/5] Compiling C++ object libhycov.so.p/src_main.cpp.o [3/5] Compiling C++ object libhycov.so.p/src_OvGridLayout.cpp.o [4/5] Compiling C++ object libhycov.so.p/src_dispatchers.cpp.o ninja: build stopped: subcommand failed.
Maybe this should be a separate issue, but I want to mention that I also can't compile with the latest Hyprland https://github.com/hyprwm/Hyprland/tree/cbadf3e3f31ab5ad5d192daac5f2ca930d08b8fb:
error: 'class CCompositor' has no member named 'windowFromCursor'
Although I was able to compile with Hyprland v0.34.0
Logs (NixOs)
this commit broken something ,
hyprwm/Hyprland@cbadf3e
have be fixed in :
@DreamMaoMao sorry if I missed something but what is the solution to my issue?
pastebin.com/LLdKVXtF
Your problem is not a problem with hcov itself. This is a common compilation problem. You need to install the development library pointed out in the error report.
pastebin.com/LLdKVXtF
Your problem is not a problem with hcov itself. This is a common compilation problem. You need to install the development library pointed out in the error report.
I thought so, but libinput is already a requirement for Hyprland, and it is installed on my system
Packages I have: libinput-devel, libinput-tools (installed that just in case), libinput-udev, libinput10, xf86-input-libinput, xf86-input-libinput-devel
Can you compile Hyprland without the plugin?
Can you compile Hyprland without the plugin?
Sorry @woojiq, I don't think that I follow you, wdym by 'without the plugin'?
If your environment is messy, I recommend using hyprpm to install plugin.
$ hyprpm update
$ hyprpm add https://github.com/DreamMaoMao/hycov
$ hyprpm enable hycov
add this to your hyprland.conf and relogin hyprland
exec-once = hyprpm reload
refer:
https://wiki.hyprland.org/Plugins/Using-Plugins/#hyprpm
Does not seem to work @DreamMaoMao, it gives the same error
sorry. Maybe you're having a problem finding headers, and I don't have any ideas.