Не получается на новом сервере установить memcacheq из ebuildа [SOLVED]
Здравствуйте.
Ставил memcacheq дважды до этого, без особых проблем. Решили обновить железо, ставлю на новом сервере memcacheq.
Скачал ebuild и начал ставить.
На первом этапе выдало ошибку enewgroup command not found. Зашел, закомментиовал в ebuild строчку(и) и добавил нового пользователя и группу вручную.
Дальше при инсталяции выдает ошибку:
gcc -march=corei7-avx -O2 -pipe -L/usr/local/BerkeleyDB.4.7/lib -Wl,-O1 -Wl,--as-needed -o memcacheq memcacheq.o item.o thread.o bdb.o hashtable.o hash.o daemon.o -lm -ldb -levent
/usr/lib/gcc/x86_64-pc-linux-gnu/4.8.2/../../../../x86_64-pc-linux-gnu/bin/ld: bdb.o: undefined reference to symbol 'pthread_rwlock_wrlock@@GLIBC_2.2.5'
/lib64/libpthread.so.0: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
Makefile:243: recipe for target 'memcacheq' failed
make[1]: *** [memcacheq] Error 1
make[1]: Leaving directory '/var/tmp/portage/net-misc/memcacheq-0.2.0/work/memcacheq-0.2.0'
Makefile:165: recipe for target 'all' failed
make: *** [all] Error 2
emake failed
Вот информация:
emerge --info
http://pastebin.com/Jhbb83iY
build.log
http://pastebin.com/gkbJRCFu
ebuild
https://bugs.gentoo.org/show_bug.cgi?id=388533
ссылки проекта:
http://code.google.com/p/memcacheq/
http://memcachedb.org/memcacheq/
Вчера почти до 3 ночи пытался самостоятельно осилить, не получилось ((
Буду рад любой помощи, спасибо.
- Для комментирования войдите или зарегистрируйтесь
я бы начал и выключения
я бы начал и выключения ccache и MAKEOPTS="-j1"
спасибо, попробовал не
спасибо, попробовал не помогло.
на предыдущем компьютере, на котором ставил MAKEOPTS="-j9 -l17" и CCACHE был включен.
может в версии gcc проблема, попробовать поискать и поставить ниже версию?
.
А ссылку на ебилд (в родном трекере и страницу проекта) приложить?…
Оный ебилд очевидно просит напильника.
Простейший grep намекает на пропуск включения user.eclass.
Стандартная сборка по умолчаниям апстрима (make) завершается успешно?
:wq
--
Live free or die
ссылку на ебилд не приложил,
ссылку на ебилд не приложил, извинюсь и исправляюсь.
https://bugs.gentoo.org/show_bug.cgi?id=388533
ссылка проекта:
http://code.google.com/p/memcacheq/
http://memcachedb.org/memcacheq/
> Стандартная сборка по умолчаниям апстрима (make) завершается успешно?
не совсем понял, но попробовал скачать исходники и попробовать установить из исходников. То все заработало.
сейчас перепроверю корректность работы, скрипт запуска и настроек уже сам сделаю
ну и соотвественно гляну в чем отличие..
При установке из исходников в configure только одна опция --enable-threads, при устноавке из ебилда
./configure --prefix=/usr --build=x86_64-pc-linux-gnu --host=x86_64-pc-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --libdir=/usr/lib64 --prefix=/usr
попробую с этими параметрами поиграть.
Спасибо!
/
Сборка != установка!
http://gentoo.ru/node/14443 !!!
Думаю, не в них дело (проставляется автоматически системой сборки согласно договорённостям о компоновке дистрибутива).
Склонен полагать пропуск не одного из необходимых eclass'ов.
:wq
--
Live free or die
:(
:(
не задумывался раньше над этим:
http://gentoo.ru/node/14443 !!!
p.s. Дело в том, что один очень известный в своих кругах знакомый, спец по астериску, который и собственно сподвиг к работе с Gentoo, учил меня ставить астериск именно из исходников. Я никогда не задумывался и никогда проблем не вылазило, а поставил я их не сказать, чтобы много но штук 30 работающих колцентров точно.
На будущее буду внимательней к установке из исходников..
beba написал(а): Дело в
Имя, брат, имя. Мы все хотим знать имя этого человека.
Compute:
Bosch M2.8.1 -> custom Bosch M2.8.3 clone from Russia.
Speed about 260 km,Ram 2 pers.,HDD - 70 kg,210 FLOPS ;)
ник anest, основатель и
ник anest, основатель и администратор форума http://www.asteriskforum.ru/.
компил в биндистре до добра не доводит :)
Compute:
Bosch M2.8.1 -> custom Bosch M2.8.3 clone from Russia.
Speed about 260 km,Ram 2 pers.,HDD - 70 kg,210 FLOPS ;)
ШГ? :D
ШГ? :D
Спасибо тебе
Спасибо тебе большое.
поправил memcacheq-0.2.0.ebuild
вместо
src_configure() {
econf \
--prefix=/usr || die "econf failed."
}
добавил
src_configure() {
econf \
--enable-threads --prefix=/usr || die "econf failed."
}
заработало
Э… Не… Так не годится! Надо
Э… Не… Так не годится!
Надо не чтобы работало (любой ценой), а чтобы работало правильно!!!
Ну и заодно скиллы в деле ебилдинга прокачать.
В данном случае:
АзЪ:
man autotools-utils.eclass
Буки:
/myeconfargs
Ну и наверное хватит…
:wq
--
Live free or die
ок, попробуем
ок, попробуем.
Тогда пока не закрываю тему
Из не вполне очевидного:
Из не вполне очевидного:
app-portage/eclass-manpages
.:wq
--
Live free or die
посмотри пож-та, вот немного
посмотри пож-та, вот немного подпилил
http://pastebin.com/74ZVV9v6
добавил user.eclass в inherit
поменял версию EAPI
добавил в use threads на всякий случай (по умолчанию включил). хотя без --enable-threads у меня не заводилось
ну и немного подправил в связи с этим src_configure
теперь все идет при обычном emerge,
/
http://www.gentoo.ru/node/14464
Хотя предварительно лучше бы промыслить рецензию кого-нито из proxy-team.
Ну и как минимум — обновлённую версию ебилда прикрепить к багу.
:wq
--
Live free or die
.
Стесняюсь спросить: а не-железо на старых серверах обновлялось?
Начинать стоит с сравнения окружения сборки (в первую очередь, но не только gcc).
И зависимостей (хотя бы прямых) тож.
:wq
--
Live free or die
.
спасибо за ответ
memcacheq зависит от двух пакетов
libevent и BerkeleyDB
их версии привел в соответсвие с теми, что стоят на рабочем сервере.
не помогло
стесняюсь спросить, а что еще вы подразумеваете под окружением сборки?