From: Eugene Prokopiev <prokopiev@stc.donpac.ru>
To: ALT Devel discussion list <devel@lists.altlinux.org>
Subject: Re: [devel] Сборка heartbeat с --as-needed
Date: Wed, 27 Sep 2006 13:20:33 +0400
Message-ID: <451A4261.5060807@stc.donpac.ru> (raw)
In-Reply-To: <679044850609270112l1846b1c9ta8e9bf7054618b46@mail.gmail.com>
Damir Shayhutdinov пишет:
>>Как в общем случае догадаться, что необходимо дописать в этот файл?
>>
>>В моем случае ситуация несколько облегчается тем, что есть
>>heartbeat-alt-build.patch от lakostis, правда для версии 2.0.4. В нем
>>фрагмент, относящийся к crm/pengine/Makefile.am, выглядит так:
>
>
>>Можно ли как нибудь сделать такой вывод (или другой, если это ошибочен)
>>не на основании патча к 2.0.4, а на основании вывода make?
>
> Возможно, это поможет:
> http://lists.altlinux.org/pipermail/sisyphus/2006-July/084838.html
спасибо
пробую
> надо найти, в какой библиотеке находятся отсутствующие символы.
> Обычно можно догадаться по названию, но если это не ясно - придется
> искать. Я обычно делаю первичный поиск грепов по всем файлам *.so в
> каталоге сборки, а потом с помощью nm -CD bar/.libs/libbar.so | grep
> megabar определяю, есть ли этот символ в библиотеке libbar.so. (Если
> напротив символа стоит U - то нету, а если T - то есть).
>
> Если выяснено, что unresolved символы находятся в библиотеке
> libbaz.so, тогда надо добавить в строчку -lbaz - то есть примерно
> так:
>
> libfoo_la_LIBADD = -lbar -lbaz
$ find -name *.so | xargs grep add_hash_param
Binary file ./lib/crm/pengine/.libs/libpe_rules.so matches
Binary file ./lib/crm/pengine/.libs/libpe_status.so matches
$ nm -CD ./lib/crm/pengine/.libs/libpe_status.so | grep add_hash_param
00005640 T add_hash_param
$ nm -CD ./lib/crm/pengine/.libs/libpe_rules.so | grep add_hash_param
00003bf0 T add_hash_param
Вообще, Т означает, что функция экспортируется? Это нормально, что одну
функцию экспортирует несколько библиотек?
В libpengine_la_LIBADD нужно добавить обе библиотеки или выбирать, какую
из? На основании чего?
>>После make clean, ./configure, make получаю:
>>gmake[2]: *** No rule to make target
>>`../../lib/crm/cib/libpe_status.la', needed by `libpengine.la'. Stop.
>
>
> Проверьте путь к библиотеке. Также, возможно, вам надо будет поменять
> порядок директорий при сборке, чтобы libpe_status.la собиралась раньше
> чем libpengine.la
Проверил. Действительно, проблема в этом. Исправил, пока собирается.
Еще вопрос: я делаю make clean, ./configure, make. Это неправильно? Для
чего и на каком этапе нужен autoreconf -fisv? Правильно ли я понимаю,
что это замена make clean, ./configure? Для чего autoreconf -fisv нужен
в спеке, если исходники после наложения патчей до %configure еще не
сконфигурированы (т.е. ./configure не выполнен)
> _______________________________________________
> Devel mailing list
> Devel@lists.altlinux.org
> https://lists.altlinux.org/mailman/listinfo/devel
--
С уважением, Прокопьев Евгений
next prev parent reply other threads:[~2006-09-27 9:20 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-09-27 6:21 Eugene Prokopiev
2006-09-27 6:30 ` Alexey I. Froloff
2006-09-27 6:52 ` Eugene Prokopiev
2006-09-27 7:39 ` Konstantin A. Lepikhov
2006-09-27 8:01 ` Eugene Prokopiev
2006-09-27 8:12 ` Damir Shayhutdinov
2006-09-27 9:20 ` Eugene Prokopiev [this message]
2006-09-27 9:39 ` Damir Shayhutdinov
2006-09-27 10:07 ` Eugene Prokopiev
2006-09-27 10:29 ` Damir Shayhutdinov
2006-09-27 10:41 ` Eugene Prokopiev
2006-09-27 11:26 ` Damir Shayhutdinov
2006-09-27 10:06 ` Konstantin A. Lepikhov
2006-09-27 10:28 ` Eugene Prokopiev
2006-09-27 10:46 ` Konstantin A. Lepikhov
2006-09-27 10:07 ` Eugene Prokopiev
2006-09-27 10:21 ` Damir Shayhutdinov
2006-09-27 10:35 ` Eugene Prokopiev
2006-09-27 10:23 ` Eugene Prokopiev
2006-09-27 10:29 ` Igor Zubkov
2006-09-27 10:29 ` Led
2006-09-27 10:30 ` Igor Zubkov
2006-09-27 10:11 ` Konstantin A. Lepikhov
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=451A4261.5060807@stc.donpac.ru \
--to=prokopiev@stc.donpac.ru \
--cc=devel@lists.altlinux.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
ALT Linux Team development discussions
This inbox may be cloned and mirrored by anyone:
git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \
devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru
public-inbox-index devel
Example config snippet for mirrors.
Newsgroup available over NNTP:
nntp://lore.altlinux.org/org.altlinux.lists.devel
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git