欢迎过来看看:https://blog.hxgpark.com/
septemberhx / dde-globalmenu-service Goto Github PK
View Code? Open in Web Editor NEWDBus service registery for dde-globalmenu
License: GNU General Public License v3.0
DBus service registery for dde-globalmenu
License: GNU General Public License v3.0
欢迎过来看看:https://blog.hxgpark.com/
期待持续更新
https://www.jetbrains.com/help/clion/menus-and-toolbars.html#linux-native-menu
他这个native menu就是您这个globalmenu吧
Clion官方支持,但我试了试不行。
yag@yag-PC:~/dde-globalmenu-service/build$ cmake ..
-- The C compiler identification is GNU 8.3.0
-- The CXX compiler identification is GNU 8.3.0
-- 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
-- Found PkgConfig: /usr/bin/pkg-config (found version "0.29")
-- Checking for modules 'xcb;xcb'
-- Found xcb, version 1.13.1
-- Found xcb, version 1.13.1
-- Found XCB: /usr/lib/x86_64-linux-gnu/libxcb.so;/usr/lib/x86_64-linux-gnu/libxcb.so
CMake Warning at CMakeLists.txt:27 (find_package):
By not providing "FindKF5Config.cmake" in CMAKE_MODULE_PATH this project
has asked CMake to find a package configuration file provided by
"KF5Config", but CMake did not find one.
Could not find a package configuration file provided by "KF5Config" with
any of the following names:
KF5ConfigConfig.cmake
kf5config-config.cmake
Add the installation prefix of "KF5Config" to CMAKE_PREFIX_PATH or set
"KF5Config_DIR" to a directory containing one of the above files. If
"KF5Config" provides a separate development package or SDK, be sure it has
been installed.
CMake Warning at CMakeLists.txt:28 (find_package):
By not providing "FindKF5CoreAddons.cmake" in CMAKE_MODULE_PATH this
project has asked CMake to find a package configuration file provided by
"KF5CoreAddons", but CMake did not find one.
Could not find a package configuration file provided by "KF5CoreAddons"
with any of the following names:
KF5CoreAddonsConfig.cmake
kf5coreaddons-config.cmake
Add the installation prefix of "KF5CoreAddons" to CMAKE_PREFIX_PATH or set
"KF5CoreAddons_DIR" to a directory containing one of the above files. If
"KF5CoreAddons" provides a separate development package or SDK, be sure it
has been installed.
-- Configuring done
CMake Error at CMakeLists.txt:52 (add_executable):
Target "dde-globalmenu-service" links to target "KF5::ConfigCore" but the
target was not found. Perhaps a find_package() call is missing for an
IMPORTED target, or an ALIAS target is missing?
CMake Error at CMakeLists.txt:52 (add_executable):
Target "dde-globalmenu-service" links to target "KF5::ConfigGui" but the
target was not found. Perhaps a find_package() call is missing for an
IMPORTED target, or an ALIAS target is missing?
CMake Error at CMakeLists.txt:52 (add_executable):
Target "dde-globalmenu-service" links to target "KF5::CoreAddons" but the
target was not found. Perhaps a find_package() call is missing for an
IMPORTED target, or an ALIAS target is missing?
-- Generating done
-- Build files have been written to: /home/yag/dde-globalmenu-service/build
yag@yag-PC:~/dde-globalmenu-service/build$ make -j8 package
Scanning dependencies of target dde-globalmenu-service_autogen
Scanning dependencies of target changelog
[ 4%] Compressing changelog
[ 8%] Generating dbusmenuadaptor.cpp, dbusmenuadaptor.h
[ 13%] Generating menuimporteradaptor.cpp, menuimporteradaptor.h
[ 13%] Built target changelog
[ 17%] Automatic MOC and UIC for target dde-globalmenu-service
[ 17%] Built target dde-globalmenu-service_autogen
[ 21%] Generating menuimporteradaptor.moc
[ 26%] Generating dbusmenuadaptor.moc
Scanning dependencies of target dde-globalmenu-service
[ 30%] Building CXX object CMakeFiles/dde-globalmenu-service.dir/main.cpp.o
[ 34%] Building CXX object CMakeFiles/dde-globalmenu-service.dir/dbusmenutypes_p.cpp.o
[ 39%] Building CXX object CMakeFiles/dde-globalmenu-service.dir/menuimporter.cpp.o
[ 43%] Building CXX object CMakeFiles/dde-globalmenu-service.dir/dbusmenushortcut_p.cpp.o
[ 52%] Building CXX object CMakeFiles/dde-globalmenu-service.dir/gmenu-dbusmenu-proxy/menuproxy.cpp.o
[ 52%] Building CXX object CMakeFiles/dde-globalmenu-service.dir/gmenu-dbusmenu-proxy/window.cpp.o
[ 56%] Building CXX object CMakeFiles/dde-globalmenu-service.dir/gmenu-dbusmenu-proxy/menu.cpp.o
[ 60%] Building CXX object CMakeFiles/dde-globalmenu-service.dir/gmenu-dbusmenu-proxy/utils.cpp.o
/home/yag/dde-globalmenu-service/gmenu-dbusmenu-proxy/menuproxy.cpp:22:10: fatal error: KConfigGroup: 没有那个文件或目录
#include
^~~~~~~~~~~~~~
compilation terminated.
make[2]: *** [CMakeFiles/dde-globalmenu-service.dir/build.make:163:CMakeFiles/dde-globalmenu-service.dir/gmenu-dbusmenu-proxy/menuproxy.cpp.o] 错误 1
make[2]: *** 正在等待未完成的任务....
make[1]: *** [CMakeFiles/Makefile2:142:CMakeFiles/dde-globalmenu-service.dir/all] 错误 2
make: *** [Makefile:152:all] 错误 2
当安装全局菜单,如果在topbar上拖动,界面会锁死
希望能够改进下程序,配置成.service文件用systemctl管理
After a recent major upgrade (I postponed it for about 3 weeks), global menu didn't work. I try to reinstall but it says it has broken dependencies, specifically appmenu-qt. I cannot install this either, because it tries to find qt4 libraries and they are not longer there. Same issue with my three PCs.
Deepin 20.6 上这个方案不好使了,还有办法吗?
Scanning dependencies of target dde-globalmenu-service_autogen
[ 4%] Generating menuimporteradaptor.cpp, menuimporteradaptor.h
[ 9%] Generating dbusmenuadaptor.cpp, dbusmenuadaptor.h
[ 13%] Automatic MOC and UIC for target dde-globalmenu-service
[ 13%] Built target dde-globalmenu-service_autogen
[ 18%] Generating menuimporteradaptor.moc
[ 22%] Generating dbusmenuadaptor.moc
Scanning dependencies of target dde-globalmenu-service
[ 27%] Building CXX object CMakeFiles/dde-globalmenu-service.dir/main.cpp.o
[ 31%] Building CXX object CMakeFiles/dde-globalmenu-service.dir/menuimporter.cpp.o
/home/deejung/Downloads/topbar/dde-globalmenu-service/menuimporter.cpp: In member function ‘void MenuImporter::RegisterWindow(WId, const QDBusObjectPath&)’:
/home/deejung/Downloads/topbar/dde-globalmenu-service/menuimporter.cpp:97:12: error: ‘xcb_atom_t’ does not name a type
static xcb_atom_t s_serviceNameAtom = XCB_ATOM_NONE;
^~~~~~~~~~
/home/deejung/Downloads/topbar/dde-globalmenu-service/menuimporter.cpp:98:12: error: ‘xcb_atom_t’ does not name a type
static xcb_atom_t s_objectPathAtom = XCB_ATOM_NONE;
^~~~~~~~~~
/home/deejung/Downloads/topbar/dde-globalmenu-service/menuimporter.cpp:100:42: error: ‘xcb_atom_t’ has not been declared
auto setWindowProperty = [c](WId id, xcb_atom_t &atom, const QByteArray &name, const QByteArray &value) {
^~~~~~~~~~
/home/deejung/Downloads/topbar/dde-globalmenu-service/menuimporter.cpp: In lambda function:
/home/deejung/Downloads/topbar/dde-globalmenu-service/menuimporter.cpp:101:21: error: ‘XCB_ATOM_NONE’ was not declared in this scope
if (atom == XCB_ATOM_NONE) {
^~~~~~~~~~~~~
/home/deejung/Downloads/topbar/dde-globalmenu-service/menuimporter.cpp:102:19: error: ‘xcb_intern_atom_cookie_t’ does not name a type
const xcb_intern_atom_cookie_t cookie = xcb_intern_atom(c, false, name.length(), name.constData());
^~~~~~~~~~~~~~~~~~~~~~~~
/home/deejung/Downloads/topbar/dde-globalmenu-service/menuimporter.cpp:103:28: error: ‘xcb_intern_atom_reply_t’ was not declared in this scope
QScopedPointer<xcb_intern_atom_reply_t, QScopedPointerPodDeleter> reply(xcb_intern_atom_reply(c, cookie, nullptr));
^~~~~~~~~~~~~~~~~~~~~~~
/home/deejung/Downloads/topbar/dde-globalmenu-service/menuimporter.cpp:103:77: error: template argument 1 is invalid
QScopedPointer<xcb_intern_atom_reply_t, QScopedPointerPodDeleter> reply(xcb_intern_atom_reply(c, cookie, nullptr));
^
/home/deejung/Downloads/topbar/dde-globalmenu-service/menuimporter.cpp:103:110: error: ‘cookie’ was not declared in this scope
QScopedPointer<xcb_intern_atom_reply_t, QScopedPointerPodDeleter> reply(xcb_intern_atom_reply(c, cookie, nullptr));
^~~~~~
/home/deejung/Downloads/topbar/dde-globalmenu-service/menuimporter.cpp:103:110: note: suggested alternative: ‘QMovie’
QScopedPointer<xcb_intern_atom_reply_t, QScopedPointerPodDeleter> reply(xcb_intern_atom_reply(c, cookie, nullptr));
^~~~~~
QMovie
/home/deejung/Downloads/topbar/dde-globalmenu-service/menuimporter.cpp:103:85: error: ‘xcb_intern_atom_reply’ was not declared in this scope
QScopedPointer<xcb_intern_atom_reply_t, QScopedPointerPodDeleter> reply(xcb_intern_atom_reply(c, cookie, nullptr));
^~~~~~~~~~~~~~~~~~~~~
/home/deejung/Downloads/topbar/dde-globalmenu-service/menuimporter.cpp:104:23: error: request for member ‘isNull’ in ‘reply’, which is of non-class type ‘int’
if (reply.isNull()) {
^~~~~~
/home/deejung/Downloads/topbar/dde-globalmenu-service/menuimporter.cpp:107:25: error: base operand of ‘->’ is not a pointer
atom = reply->atom;
^~
/home/deejung/Downloads/topbar/dde-globalmenu-service/menuimporter.cpp:113:32: error: ‘XCB_PROP_MODE_REPLACE’ was not declared in this scope
xcb_change_property(c, XCB_PROP_MODE_REPLACE, id, atom, XCB_ATOM_STRING,
^~~~~~~~~~~~~~~~~~~~~
/home/deejung/Downloads/topbar/dde-globalmenu-service/menuimporter.cpp:113:65: error: ‘XCB_ATOM_STRING’ was not declared in this scope
xcb_change_property(c, XCB_PROP_MODE_REPLACE, id, atom, XCB_ATOM_STRING,
^~~~~~~~~~~~~~~
/home/deejung/Downloads/topbar/dde-globalmenu-service/menuimporter.cpp:113:9: error: ‘xcb_change_property’ was not declared in this scope
xcb_change_property(c, XCB_PROP_MODE_REPLACE, id, atom, XCB_ATOM_STRING,
^~~~~~~~~~~~~~~~~~~
/home/deejung/Downloads/topbar/dde-globalmenu-service/menuimporter.cpp: In member function ‘void MenuImporter::RegisterWindow(WId, const QDBusObjectPath&)’:
/home/deejung/Downloads/topbar/dde-globalmenu-service/menuimporter.cpp:119:27: error: ‘s_serviceNameAtom’ was not declared in this scope
setWindowProperty(id, s_serviceNameAtom, s_x11AppMenuServiceNamePropertyName, service.toUtf8());
^~~~~~~~~~~~~~~~~
/home/deejung/Downloads/topbar/dde-globalmenu-service/menuimporter.cpp:119:27: note: suggested alternative: ‘m_serviceWatcher’
setWindowProperty(id, s_serviceNameAtom, s_x11AppMenuServiceNamePropertyName, service.toUtf8());
^~~~~~~~~~~~~~~~~
m_serviceWatcher
/home/deejung/Downloads/topbar/dde-globalmenu-service/menuimporter.cpp:120:27: error: ‘s_objectPathAtom’ was not declared in this scope
setWindowProperty(id, s_objectPathAtom, s_x11AppMenuObjectPathPropertyName, path.path().toUtf8());
^~~~~~~~~~~~~~~~
make[2]: *** [CMakeFiles/dde-globalmenu-service.dir/build.make:98: CMakeFiles/dde-globalmenu-service.dir/menuimporter.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:105: CMakeFiles/dde-globalmenu-service.dir/all] Error 2
make: *** [Makefile:84: all] Error 2
cmake log:
-- The C compiler identification is GNU 8.3.0
-- The CXX compiler identification is GNU 8.3.0
-- 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
-- Found PkgConfig: /usr/bin/pkg-config (found version "0.29")
-- Checking for modules 'xcb;xcb'
-- Found xcb, version 1.13.1
-- Found xcb, version 1.13.1
-- Found XCB: /usr/lib/x86_64-linux-gnu/libxcb.so;/usr/lib/x86_64-linux-gnu/libxcb.so
-- Configuring done
CMake Warning at CMakeLists.txt:50 (add_executable):
Cannot generate a safe runtime search path for target
dde-globalmenu-service because files in some directories may conflict with
libraries in implicit directories:
runtime library [libxcb.so.1] in /usr/lib/x86_64-linux-gnu may be hidden by files in:
/home/deejung/anaconda3/lib
Some of these libraries may not be found correctly.
-- Generating done
-- Build files have been written to: /home/deejung/Downloads/topbar/dde-globalmenu-service/build
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.