LINUX.ORG.RU

сборка awesome в слаке - glib-unix.h not found

 ,


0

1

Добрый день. Поставил слаку, собираю awesome, зав-ти установил. А мне говорят, мол, так и так, glib-unix.h не найден. glib2 установлен, а файлик glib-unix.h лежит себе спокойно в /usr/include/glib-2/glib-unix.h . Я так понимаю, инсталлятору хочется, чтобы файлик лежат в /usr/include/ сразу, а не в подпапке, но так закинула система. Вот и думаю, что делать с этим. Awesome беру из slackbuilds, собирает sbopkg

UPD: в awesome.c glib-unix.h действительно ищется в корне /usr/include. Но как теперь это дело красиво исправить? Копировать файлы мне не кажется хорошей идеей.



Последнее исправление: USF (всего исправлений: 2)

Slackware64-14.1, проблемы не наблюдаю:

# sbopkg -r
# sbopkg -ki "lua lgi libxdg-basedir awesome"
...
Package awesome-3.5.2-x86_64-1_SBo.txz installed.
...

Чего-то не хватает из D? cmake? pkg-config?

bormant ★★★★★
()
Последнее исправление: bormant (всего исправлений: 1)

в awesome.c glib-unix.h действительно ищется в корне /usr/include

Это несколько не так.

#include <glib-unix.h>
означает, что заголовочный файл ищется в путях для заголовочных файлов по умолчанию, которые включают в себя переданные компилятору в директивах -I. Искомое для glib2 можно глянуть так:
$ pkg-config --cflags glib-2.0
-I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include

bormant ★★★★★
()
Последнее исправление: bormant (всего исправлений: 2)
Ответ на: комментарий от bormant

cmake на месте, pkg-config тоже есть. Ну почему вот компилятор в папке glib-2/ не ищет хедеры, я не могу понять :с

USF
() автор топика
Ответ на: комментарий от bormant
pkg-config --cflags glib-2.0 

возвращает такое:

-I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include 

То есть все верно выглядит(да, папку glib-2.0, я нолик опустил просто)

USF
() автор топика
Последнее исправление: USF (всего исправлений: 1)
Ответ на: комментарий от bormant
-- Build files have been written to: /tmp/SBo/awesome-3.5.2/build
Scanning dependencies of target generated_sources
[  0%] Generating atoms-intern.h
[  1%] Generating atoms-extern.h
[  1%] Built target generated_sources
Scanning dependencies of target awesome
[  1%] Building C object CMakeFiles/awesome.dir/awesome.c.o
/tmp/SBo/awesome-3.5.2/awesome.c:36:23: fatal error: glib-unix.h: No such file or directory
 #include <glib-unix.h>
                       ^
compilation terminated.
make[2]: *** [CMakeFiles/awesome.dir/awesome.c.o] Error 1
make[1]: *** [CMakeFiles/awesome.dir/all] Error 2
make: *** [all] Error 2

bash-4.2# pkg-config --cflags glib-2.0
-I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include 
USF
() автор топика
Ответ на: комментарий от USF

Стало быть и в grep REQUIRED_INCLUDE_DIRS /tmp/SBo/awesome-*/build/CMakeCache.txt они тоже не попали?

Судя по исходникам (./awesomeConfig.cmake) эта переменная cmake наполняется при помощи pkg-config...

Что-то с вашей локальной установкой не так...

Можно в качестве временного быстрого и грязного решения подсунуть все необходимые флаги в SLKFLAGS слакбилда руками, но мне такой вариант сильно не нравится.

bormant ★★★★★
()
Последнее исправление: bormant (всего исправлений: 1)
Ответ на: комментарий от bormant
AWESOME_COMMON_REQUIRED_INCLUDE_DIRS:INTERNAL=
AWESOME_REQUIRED_INCLUDE_DIRS:INTERNAL=

Пустые. Даже не знаю, что може быть не так..

USF
() автор топика
Ответ на: комментарий от bormant

Глупый-глупый я, поотлючал при установке пакеты *proto из /x/, а они нужны были. Пойду поправлять, спасибо за помощь!

USF
() автор топика
Ответ на: комментарий от bormant

Блин, какое-то проклятие. Теперь ругается, что в /tmp/SBo/package-awesome/usr/ нет папки man. Для того же lua оно создало папку нормально.

Что за...

USF
() автор топика
9 марта 2015 г.
Ответ на: комментарий от bormant

Ага, руками создал :D Как ни странно, но по ходу работу сталкивался еще с парой пакетов, у которого рукалось на отсутствие папки man..

USF
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.