Записки разработчика

06.02.2016

Как узнать какому пакету может принадлежать файл

Ставил я тут давеча игрулю 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: Оно-таки скомпилилось, правда пришлось ещё кучу пакетов поставить. Если кому интересно — игра вот: Caesaria

Caesaria

admin @ 23:50


 

Powered by WordPress