构建出色的 WM

构建出色的 WM

我正在关注这些步骤为了建立很棒的窗口管理器10.04

我正在构建 3.4,而本教程针对的是 3.1

我安装了所有指定的依赖项,包括 cairo。

跑步后cd awesome-3.4 && 制作我收到以下缺少依赖项错误:

Running cmake…
-- cat -> /bin/cat
-- ln -> /bin/ln
-- grep -> /bin/grep
-- git -> /usr/bin/git
-- hostname -> /bin/hostname
-- gperf -> /usr/bin/gperf
-- asciidoc -> /usr/bin/asciidoc
-- xmlto -> /usr/bin/xmlto
-- gzip -> /bin/gzip
-- lua -> /usr/bin/lua
-- luadoc -> /usr/bin/luadoc
-- convert -> /usr/bin/convert
-- checking for modules 'glib-2.0;cairo;x11;pango>=1.19.3;pangocairo>=1.19.3;xcb-randr;xcb-xtest;xcb-xinerama;xcb-shape;xcb-event>=0.3.6;xcb-aux>=0.3.0;xcb-atom>=0.3.0;xcb-keysyms>=0.3.4;xcb-icccm>=0.3.6;xcb-image>=0.3.0;xcb-property>=0.3.0;cairo-xcb;libstartup-notification-1.0>=0.10;xproto>=7.0.15;imlib2;libxdg-basedir>=1.0.0'

--   package 'xcb-xtest' not found  
--   package 'xcb-property>=0.3.0' not found  
--   package 'libstartup-notification-1.0>=0.10' not found  
--   package 'libxdg-basedir>=1.0.0' not found

>CMake Error at /usr/share/cmake-2.8/Modules/FindPkgConfig.cmake:259 (message):
  A required package was not found
Call Stack (most recent call first):
  /usr/share/cmake-2.8/Modules/FindPkgConfig.cmake:311 (_pkg_check_modules_internal)

awesomeConfig.cmake:133 (pkg_check_modules) CMakeLists.txt:15 (包括)

>CMake Error at awesomeConfig.cmake:157 (message):
Call Stack (most recent call first):
  CMakeLists.txt:15 (include)


>-- Configuring incomplete, errors occurred!
make: *** [cmake] Error 1

我跑了

sudo apt-get install libxcb-xtest0 libxcb-property1 libxdg-basedir1 libstartup-notification0

但问题仍然存在。可能是因为 apt-get 对这些库使用了不同的名称。请指教

编辑按照 enzotib 的建议,我运行了:

**sudo apt-get install libxcb-xtest0-dev libxcb-property1-dev libxdg-basedir-dev libstartup-notification0-dev**  

现在看起来我缺少一个库:

awesome-3.4$ make
Running cmake…
-- cat -> /bin/cat
-- ln -> /bin/ln
-- grep -> /bin/grep
-- git -> /usr/bin/git
-- hostname -> /bin/hostname
-- gperf -> /usr/bin/gperf
-- asciidoc -> /usr/bin/asciidoc
-- xmlto -> /usr/bin/xmlto
-- gzip -> /bin/gzip
-- lua -> /usr/bin/lua
-- luadoc -> /usr/bin/luadoc
-- convert -> /usr/bin/convert

-- Configuring lib/naughty.lua  
-- Configuring lib/awful/tooltip.lua  
-- Configuring lib/awful/init.lua  
-- Configuring lib/awful/titlebar.lua  
-- Configuring lib/awful/key.lua  
-- Configuring lib/awful/mouse/init.lua  
-- Configuring lib/awful/mouse/finder.lua  
-- Configuring lib/awful/autofocus.lua  
-- Configuring lib/awful/screen.lua  
-- Configuring lib/awful/rules.lua  
-- Configuring lib/awful/widget/init.lua  
-- Configuring lib/awful/widget/taglist.lua  
-- Configuring lib/awful/widget/graph.lua  
-- Configuring lib/awful/widget/tasklist.lua
-- Configuring lib/awful/widget/common.lua  
-- Configuring lib/awful/widget/prompt.lua  
-- Configuring lib/awful/widget/launcher.lua  
-- Configuring lib/awful/widget/button.lua  
-- Configuring lib/awful/widget/layoutbox.lua  
-- Configuring lib/awful/widget/layout/init.lua  
-- Configuring lib/awful/widget/layout/vertical.lua  
-- Configuring lib/awful/widget/layout/horizontal.lua  
-- Configuring lib/awful/widget/layout/default.lua  
-- Configuring lib/awful/widget/progressbar.lua  
-- Configuring lib/awful/widget/textclock.lua  
-- Configuring lib/awful/dbus.lua  
-- Configuring lib/awful/remote.lua  
-- Configuring lib/awful/client.lua  
-- Configuring lib/awful/prompt.lua  
-- Configuring lib/awful/completion.lua  
-- Configuring lib/awful/tag.lua  
-- Configuring lib/awful/util.lua  
-- Configuring lib/awful/button.lua  
-- Configuring lib/awful/menu.lua  
-- Configuring lib/awful/hooks.lua  
-- Configuring lib/awful/wibox.lua  
-- Configuring lib/awful/layout/init.lua  
-- Configuring lib/awful/layout/suit/init.lua  
-- Configuring lib/awful/layout/suit/floating.lua  
-- Configuring lib/awful/layout/suit/fair.lua  
-- Configuring lib/awful/layout/suit/spiral.lua  
-- Configuring lib/awful/layout/suit/magnifier.lua  
-- Configuring lib/awful/layout/suit/tile.lua  
-- Configuring lib/awful/layout/suit/max.lua  
-- Configuring lib/awful/placement.lua  
-- Configuring lib/awful/startup_notification.lua  
-- Configuring lib/beautiful.lua  
-- Configuring themes/zenburn//theme.lua  
-- Configuring themes/default//theme.lua  
-- Configuring themes/sky//theme.lua  
-- Configuring config.h  
-- Configuring awesomerc.lua  
-- Configuring awesome-version-internal.h  
-- Configuring awesome.doxygen  
-- Configuring done  
-- Generating done  


-- Build files have been written to: /home/druden/util/awesome-3.4/.build-vedroid-i486-linux-gnu-4.4.3
Running make Makefile…
Building…
[  4%] Built target generated_sources
[  5%] Building C object CMakeFiles/awesome.dir/awesome.c.o
In file included from /home/druden/util/awesome-3.4/spawn.h:25,
             from /home/druden/util/awesome-3.4/awesome.c:33:

/home/druden/util/awesome-3.4/globalconf.h:57: error: expected specifier-qualifier-list before ‘xcb_event_handlers_t’  
In file included from /home/druden/util/awesome-3.4/awesome.c:34:
/home/druden/util/awesome-3.4/client.h: In function ‘client_stack’:
/home/druden/util/awesome-3.4/client.h:212: error: ‘awesome_t’ has no member named ‘client_need_stack_refresh’  
/home/druden/util/awesome-3.4/client.h: In function ‘client_raise’:
/home/druden/util/awesome-3.4/client.h:227: error: ‘awesome_t’ has no member named ‘stack’  
In file included from /home/druden/util/awesome-3.4/awesome.c:42:  
/home/druden/util/awesome-3.4/titlebar.h: In function ‘titlebar_update_geometry’:
/home/druden/util/awesome-3.4/titlebar.h:150: error: ‘awesome_t’ has no member named ‘L’
/home/druden/util/awesome-3.4/titlebar.h:151: error: ‘awesome_t’ has no member named ‘L’
/home/druden/util/awesome-3.4/titlebar.h:152: error: ‘awesome_t’ has no member named ‘L’
In file included from /home/druden/util/awesome-3.4/awesome.c:47:  
/home/druden/util/awesome-3.4/common/xutil.h: In function ‘xutil_get_text_property_from_reply’:  
/home/druden/util/awesome-3.4/common/xutil.h:39: warning: ‘STRING’ is deprecated (declared at /usr/local/include/xcb/xcb_atom.h:83)  
/home/druden/util/awesome-3.4/common/xutil.h: At top level:  
/home/druden/util/awesome-3.4/common/xutil.h:60: error: expected ‘)’ before ‘*’ token
/home/druden/util/awesome-3.4/awesome.c: In function ‘awesome_atexit’:  
/home/druden/util/awesome-3.4/awesome.c:65: error: ‘awesome_t’ has no member named ‘hooks’  
/home/druden/util/awesome-3.4/awesome.c:66: error: ‘awesome_t’ has no member named ‘L’  
/home/druden/util/awesome-3.4/awesome.c:66: error: ‘awesome_t’ has no member named ‘hooks’  
/home/druden/util/awesome-3.4/awesome.c:68: error: ‘awesome_t’ has no member named ‘L’
/home/druden/util/awesome-3.4/awesome.c:73: error: ‘awesome_t’ has no member named ‘embedded’  
/home/druden/util/awesome-3.4/awesome.c:76: error: ‘awesome_t’ has no member named ‘embedded’  
/home/druden/util/awesome-3.4/awesome.c:77: error: ‘awesome_t’ has no member named ‘embedded’  
/home/druden/util/awesome-3.4/awesome.c:89: error: ‘awesome_t’ has no member named ‘clients’  
/home/druden/util/awesome-3.4/awesome.c:89: error: ‘awesome_t’ has no member named ‘clients’  
/home/druden/util/awesome-3.4/awesome.c:89: error: ‘awesome_t’ has no member named ‘clients’  
/home/druden/util/awesome-3.4/awesome.c:89: warning: type defaults to ‘int’ in declaration of ‘c’  
/home/druden/util/awesome-3.4/awesome.c:89: error: ‘awesome_t’ has no member named ‘clients’  
/home/druden/util/awesome-3.4/awesome.c:89: error: ‘awesome_t’ has no member named ‘clients’  
/home/druden/util/awesome-3.4/awesome.c:89: error: ‘awesome_t’ has no member named ‘clients’  
/home/druden/util/awesome-3.4/awesome.c:91: error: invalid type argument of ‘unary *’ (have ‘int’)  
/home/druden/util/awesome-3.4/awesome.c:92: error: invalid type argument of ‘unary *’ (have ‘int’)  
/home/druden/util/awesome-3.4/awesome.c:96: error: ‘awesome_t’ has no member named ‘L’
/home/druden/util/awesome-3.4/awesome.c: In function ‘a_xcb_check_cb’:  
/home/druden/util/awesome-3.4/awesome.c:223: warning: implicit declaration of function ‘xcb_event_handle’  
/home/druden/util/awesome-3.4/awesome.c:223: error: ‘awesome_t’ has no member named ‘evenths’  
/home/druden/util/awesome-3.4/awesome.c:230: error: ‘awesome_t’ has no member named ‘evenths’  
/home/druden/util/awesome-3.4/awesome.c: In function ‘awesome_restart’:  
/home/druden/util/awesome-3.4/awesome.c:277: error: ‘awesome_t’ has no member named ‘argv’  
/home/druden/util/awesome-3.4/awesome.c: In function ‘xerror’:  
/home/druden/util/awesome-3.4/awesome.c:305: error: ‘XCB_EVENT_ERROR_BAD_WINDOW’ undeclared (first use in this function)  
/home/druden/util/awesome-3.4/awesome.c:305: error: (Each undeclared identifier is reported only once  
/home/druden/util/awesome-3.4/awesome.c:305: error: for each function it appears in.)  
/home/druden/util/awesome-3.4/awesome.c:306: error: ‘XCB_EVENT_ERROR_BAD_MATCH’ undeclared (first use in this function)  
/home/druden/util/awesome-3.4/awesome.c:308: error: ‘XCB_EVENT_ERROR_BAD_VALUE’ undeclared (first use in this function)  
/home/druden/util/awesome-3.4/awesome.c: In function ‘main’:  
/home/druden/util/awesome-3.4/awesome.c:369: error: ‘awesome_t’ has no member named ‘keygrabber’  
/home/druden/util/awesome-3.4/awesome.c:370: error: ‘awesome_t’ has no member named ‘mousegrabber’  
/home/druden/util/awesome-3.4/awesome.c:376: error: ‘awesome_t’ has no member named ‘argv’  
/home/druden/util/awesome-3.4/awesome.c:377: error: ‘awesome_t’ has no member named ‘argv’  
/home/druden/util/awesome-3.4/awesome.c:381: error: ‘awesome_t’ has no member named ‘argv’  
/home/druden/util/awesome-3.4/awesome.c:382: error: ‘awesome_t’ has no member named ‘argv’  
/home/druden/util/awesome-3.4/awesome.c:424: error: ‘awesome_t’ has no member named ‘loop’  
/home/druden/util/awesome-3.4/awesome.c:425: error: ‘awesome_t’ has no member named ‘timer’  
/home/druden/util/awesome-3.4/awesome.c:425: error: ‘awesome_t’ has no member named ‘timer’  
/home/druden/util/awesome-3.4/awesome.c:425: error: ‘awesome_t’ has no member named ‘timer’  
/home/druden/util/awesome-3.4/awesome.c:425: error: ‘awesome_t’ has no member named ‘timer’  
/home/druden/util/awesome-3.4/awesome.c:425: error: ‘awesome_t’ has no member named ‘timer’  
/home/druden/util/awesome-3.4/awesome.c:425: error: ‘awesome_t’ has no member named ‘timer’  
/home/druden/util/awesome-3.4/awesome.c:431: error: ‘awesome_t’ has no member named ‘loop’  
/home/druden/util/awesome-3.4/awesome.c:432: error: ‘awesome_t’ has no member named ‘loop’  
/home/druden/util/awesome-3.4/awesome.c:433: error: ‘awesome_t’ has no member named ‘loop’  
/home/druden/util/awesome-3.4/awesome.c:434: error: ‘awesome_t’ has no member named ‘loop’  
/home/druden/util/awesome-3.4/awesome.c:435: error: ‘awesome_t’ has no member named ‘loop’  
/home/druden/util/awesome-3.4/awesome.c:436: error: ‘awesome_t’ has no member named ‘loop’  
/home/druden/util/awesome-3.4/awesome.c:443: error: ‘awesome_t’ has no member named ‘default_screen’  
/home/druden/util/awesome-3.4/awesome.c:450: error: ‘awesome_t’ has no member named ‘have_xtest’  
/home/druden/util/awesome-3.4/awesome.c:462: error: ‘awesome_t’ has no member named ‘loop’  
/home/druden/util/awesome-3.4/awesome.c:464: error: ‘awesome_t’ has no member named ‘loop’  
/home/druden/util/awesome-3.4/awesome.c:465: error: ‘awesome_t’ has no member named ‘loop’  
/home/druden/util/awesome-3.4/awesome.c:467: error: ‘awesome_t’ has no member named ‘loop’  
/home/druden/util/awesome-3.4/awesome.c:468: error: ‘awesome_t’ has no member named ‘loop’  
/home/druden/util/awesome-3.4/awesome.c:471: warning: implicit declaration of function ‘xcb_event_handlers_init’  
/home/druden/util/awesome-3.4/awesome.c:471: error: ‘awesome_t’ has no member named ‘evenths’  
/home/druden/util/awesome-3.4/awesome.c:472: warning: implicit declaration of function ‘xutil_error_handler_catch_all_set’  
/home/druden/util/awesome-3.4/awesome.c:472: error: ‘awesome_t’ has no member named ‘evenths’  
/home/druden/util/awesome-3.4/awesome.c:490: warning: implicit declaration of function ‘xcb_event_poll_for_event_loop’  
/home/druden/util/awesome-3.4/awesome.c:490: error: ‘awesome_t’ has no member named ‘evenths’  
/home/druden/util/awesome-3.4/awesome.c:493: error: ‘awesome_t’ has no member named ‘evenths’  
/home/druden/util/awesome-3.4/awesome.c:496: error: ‘awesome_t’ has no member named ‘keysyms’  
/home/druden/util/awesome-3.4/awesome.c:507: error: ‘awesome_t’ has no member named ‘colors’  
/home/druden/util/awesome-3.4/awesome.c:510: error: ‘awesome_t’ has no member named ‘colors’  
/home/druden/util/awesome-3.4/awesome.c:513: error: ‘awesome_t’ has no member named ‘font’  
/home/druden/util/awesome-3.4/awesome.c:519: error: ‘awesome_t’ has no member named ‘keysyms’  
/home/druden/util/awesome-3.4/awesome.c:519: error: ‘awesome_t’ has no member named ‘numlockmask’  
/home/druden/util/awesome-3.4/awesome.c:520: error: ‘awesome_t’ has no member named ‘shiftlockmask’  
/home/druden/util/awesome-3.4/awesome.c:520: error: ‘awesome_t’ has no member named ‘capslockmask’  
/home/druden/util/awesome-3.4/awesome.c:521: error: ‘awesome_t’ has no member named ‘modeswitchmask’  
/home/druden/util/awesome-3.4/awesome.c:563: error: ‘awesome_t’ has no member named ‘evenths’  
/home/druden/util/awesome-3.4/awesome.c:572: error: ‘awesome_t’ has no member named ‘loop’  
/home/druden/util/awesome-3.4/awesome.c:575: error: ‘awesome_t’ has no member named ‘loop’  
/home/druden/util/awesome-3.4/awesome.c:576: error: ‘awesome_t’ has no member named ‘loop’  
/home/druden/util/awesome-3.4/awesome.c:577: error: ‘awesome_t’ has no member named ‘loop’  
/home/druden/util/awesome-3.4/awesome.c:578: error: ‘awesome_t’ has no member named ‘loop’  
/home/druden/util/awesome-3.4/awesome.c:579: error: ‘awesome_t’ has no member named ‘loop’  
/home/druden/util/awesome-3.4/awesome.c:580: error: ‘awesome_t’ has no member named ‘loop’  
make[3]: *** [CMakeFiles/awesome.dir/awesome.c.o] Error 1  
make[2]: *** [CMakeFiles/awesome.dir/all] Error 2  
make[1]: *** [all] Error 2  
make: *** [cmake-build] Error 2  

答案1

我认为您需要 -dev 版本的库来进行编译。

相关内容