2014-06-07 3 views
2

Я пытался пересечь скомпилировать Systemd-213 для ARM, и я получаю сообщение об ошибке при configureCross компилировать Systemd: не cap_init найдено

checking for library containing dlsym... -ldl 
checking sys/capability.h usability... yes 
checking sys/capability.h presence... yes 
checking for sys/capability.h... yes 
checking linux/btrfs.h usability... no 
checking linux/btrfs.h presence... no 
checking for linux/btrfs.h... no 
checking for library containing clock_gettime... -lrt 
checking for library containing cap_init... no 
configure: error: *** POSIX caps library not found 

Я уже крест составлен libcap и добавлен в каталог, содержащий произведенную библиотеки в LDFLAGS, используя -L, как указано echo $LDFLAGS перед тем, как позвонить configure.

ошибка происходит из следующей строки в configure.ac

AC_SEARCH_LIBS([cap_init], [cap], [], [AC_MSG_ERROR([*** POSIX caps library not found])]) 

Я рассмотрел как libcap.a и libcap.so с objdump -t и нашел записи для cap_init

00000108 g  F .text 000000b4 cap_init <- libcap.a 
00001240 g  F .text 000000b4 cap_init <- libcap.so 

Я не имеют большой опыт работы с autoconf, но я не понимаю, почему cap_init не может быть найден.

Я думаю, что я разместил соответствующую информацию, но при необходимости могу предоставить больше.

+0

Есть ли путь поиска библиотеки к пути 'libcap.so' или' libcap.a'? –

ответ

5

У меня была та же проблема, но я был скомбинирован pulseaudio. Проблема не в том, что libcap.so не найден; проблема заключалась в том, что libattr.so, необходимый для libcap.so, не удалось найти. Я видел это в файле config.log. Моим решением было добавить -lattr в переменную окружения LDFLAGS перед загрузкой и настройкой.

2

Ошибка при сборке systemd-204. Решение должно быть выполнено:

sudo apt-get install libcap-dev