Ставил я тут давеча игрулю Caesaria, но вот незадача — компиляция вывалилась с ошибкой:
In file included from /home/user/games/caesaria/dep/sdl2mini/src/video/SDL_video.c:34:0: /home/user/games/caesaria/dep/sdl2mini/include/SDL_syswm.h:72:22: fatal error: X11/Xlib.h: Нет такого файла или каталога #include^ compilation terminated. make[2]: *** [dep/sdl2mini/CMakeFiles/sdl2mini.dir/src/video/SDL_video.c.o] Ошибка 1 make[1]: *** [dep/sdl2mini/CMakeFiles/sdl2mini.dir/all] Ошибка 2 make: *** [all] Ошибка 2
Видим что требует файл: Xlib.h
Чтобы найти какому пакету он может принадлежать, ставим программу:
sudo apt-get install apt-file
Обновляем кеш:
apt-file update
и делаем запрос:
apt-file search Xlib.h
Получаем ответ:
user@orion-xubuntu:~/games/caesaria$ apt-file search Xlib.h castle-game-engine-doc: /usr/share/doc/castle-game-engine-doc/html/CastleXlib.html emscripten: /usr/share/emscripten/system/include/X11/Xlib.h ivtools-dev: /usr/include/IV-X11/Xlib.h libghc-x11-dev: /usr/lib/haskell-packages/ghc/lib/X11-1.6.1.1/ghc-7.6.3/Graphics/X11/Xlib.hi libghc-x11-dev: /usr/lib/haskell-packages/ghc/lib/X11-1.6.1.1/ghc-7.6.3/include/HsXlib.h libghc-x11-doc: /usr/share/doc/libghc-x11-doc/html/Graphics-X11-Xlib.html libghc-x11-doc: /usr/share/doc/libghc-x11-doc/html/mini_Graphics-X11-Xlib.html libghc-x11-doc: /usr/share/doc/libghc-x11-doc/html/src/Graphics-X11-Xlib.html libhugs-x11-bundled: /usr/lib/hugs/packages/X11/Graphics/X11/Xlib.hs libroot-core5.34: /usr/lib/i386-linux-gnu/root5.34/cint/include/X11/Xlib.h libx11-dev: /usr/include/X11/Xlib.h perl-tk: /usr/lib/perl5/Tk/pTk/Xlib.h tendra: /usr/lib/TenDRA/lib/include/x5/lib.api/X11/Xlib.h xemacs21-bin: /usr/lib/xemacs-21.4.22/i686-linux-gnu/include/extw-Xlib.h z88dk-data: /usr/share/z88dk/include/x11/Xlib.h
Обычно для компиляции требуются пакеты с -dev оконачанием. Точное соответствие у пакета libx11-dev.
sudo apt-get install libx11-dev
И продолжаем компилировать.
PS: Оно-таки скомпилилось, правда пришлось ещё кучу пакетов поставить. Если кому интересно — игра вот: