* [devel] Q: linuxsampler
@ 2005-12-04 22:40 Mikhail Yakshin
2005-12-04 22:51 ` Dmitry V. Levin
0 siblings, 1 reply; 9+ messages in thread
From: Mikhail Yakshin @ 2005-12-04 22:40 UTC (permalink / raw)
To: ALT Devel discussion list
Приветствую и попробую попросить помощи у сообщества.
Есть связка пакетов проекта linuxsampler, которую я пытаюсь собирает.
Состоит из 2 независимых приложений: frontend и backend. Весь frontend
собрался и прошел в Сизиф, без проблем.
Проблемы с backend: он состоит из libgig, которая парсит файлы,
liblinuxsampler.so.0, которая содержит собственно функциональность
сэмплера и тривиального бинарника linuxsampler, который тупо загружает и
выполняет по сути код из этой библиотеки. libgig собрался без проблем,
все в порядке, TEXTREL нет, в Сизиф прошел. А вот linuxsampler и его lib
собираются из одного и того же тарболла (впрочем, пакуются они тоже в
один бинарный пакет), и здесь начинаются проблемы с TEXTREL: пакет
собирается, но в результате почему-то внутри получаются эти самые text
relocations и проверки оно не проходит.
Что характерно, сам продукт написан достаточно грамотно и сам
обрабатывает ситуацию с -fPIC, что видно по логам:
[...]
checking if i586-alt-linux-gcc static flag works... yes
checking if i586-alt-linux-gcc supports -fno-rtti -fno-exceptions... no
checking for i586-alt-linux-gcc option to produce PIC... -fPIC
checking if i586-alt-linux-gcc PIC flag -fPIC works... yes
checking if i586-alt-linux-gcc supports -c -o file.o... yes
checking whether the i586-alt-linux-gcc linker (/usr/bin/ld) supports
shared libraries... yes
checking whether -lc should be explicitly linked in... no
[...]
и далее по сборке, -fPIC используется:
i586-alt-linux-g++ -DHAVE_CONFIG_H -I. -I. -I../.. -Wreturn-type
-ffast-math -march=i586 -pipe -Wall -O2 -march=i586 -mcpu=i686 -msse -MT
lscpparser.lo -MD -MP -MF .deps/lscpparser.Tpo -c lscpparser.cpp -fPIC
-DPIC -o .libs/lscpparser.o
и т.п.
Но при этом почему-то на выходе получаем:
Verifying and fixing files in /usr/src/tmp/linuxsampler-buildroot
(binconfig,pkgconfig,libtool)
/usr/lib/linuxsampler/liblinuxsampler.la: dependency_libs: ' -lgig ljack
-lasound' --> '-lgig -ljack -lasound'
Compressing files in /usr/src/tmp/linuxsampler-buildroot (auto)
Verifying ELF objects in /usr/src/tmp/linuxsampler-buildroot
(rpath=normal,textrel=normal)
verify-elf: ./usr/lib/linuxsampler/liblinuxsampler.so.0.0.0: TEXTREL
entry found: 0x0
и соответственно, это правда - видно и .la-файл, который собрался туда
же. Вероятно, есть какие-то проблемы с libtool, которые приводят к
такому результату - в какую сторону копать, что читать, что стоит смотреть?
Сам spec очень простой, собирается все вот таким вот образом:
%prep
%setup -q
%build
autoreconf -fisv
%configure
%make_build
%install
%make DESTDIR=%buildroot install
Пробовал добавлять в %configure --disable-static - не помогает. Есть
подозрение на то, что такой эффект дают "assembly optimizations",
которые включены и выключать их не очень хочется...
--
WBR, Mikhail Yakshin AKA GreyCat
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [devel] Q: linuxsampler
2005-12-04 22:40 [devel] Q: linuxsampler Mikhail Yakshin
@ 2005-12-04 22:51 ` Dmitry V. Levin
2005-12-05 5:44 ` Andrey Rahmatullin
` (2 more replies)
0 siblings, 3 replies; 9+ messages in thread
From: Dmitry V. Levin @ 2005-12-04 22:51 UTC (permalink / raw)
To: ALT Devel discussion list
[-- Attachment #1: Type: text/plain, Size: 1817 bytes --]
On Mon, Dec 05, 2005 at 01:40:24AM +0300, Mikhail Yakshin wrote:
> Приветствую и попробую попросить помощи у сообщества.
>
> Есть связка пакетов проекта linuxsampler, которую я пытаюсь собирает.
> Состоит из 2 независимых приложений: frontend и backend. Весь frontend
> собрался и прошел в Сизиф, без проблем.
>
> Проблемы с backend: он состоит из libgig, которая парсит файлы,
> liblinuxsampler.so.0, которая содержит собственно функциональность
> сэмплера и тривиального бинарника linuxsampler, который тупо загружает и
> выполняет по сути код из этой библиотеки. libgig собрался без проблем,
> все в порядке, TEXTREL нет, в Сизиф прошел. А вот linuxsampler и его lib
> собираются из одного и того же тарболла (впрочем, пакуются они тоже в
> один бинарный пакет), и здесь начинаются проблемы с TEXTREL: пакет
> собирается, но в результате почему-то внутри получаются эти самые text
> relocations и проверки оно не проходит.
>
> Что характерно, сам продукт написан достаточно грамотно и сам
> обрабатывает ситуацию с -fPIC, что видно по логам:
Подобная история приключилась когда-то с libalsa, патч до сих пор в
пакете называется alsa-lib-0.9.8-alt-fpic.patch, стоит на него один раз
взглянуть, чтобы понять, насколько нетиповыми бывают грабли.
[...]
> в какую сторону копать, что читать, что стоит смотреть?
[...]
> Пробовал добавлять в %configure --disable-static - не помогает. Есть
> подозрение на то, что такой эффект дают "assembly optimizations",
> которые включены и выключать их не очень хочется...
Для начала надо локализовать тот объектный файл, который содержит text
relocations. Для этого достаточно из каждого объектного файла,
образующего liblinuxsampler.so.0, собрать ELF shared object и проверить
его на наличие text relocations.
--
ldv
[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [devel] Q: linuxsampler
2005-12-04 22:51 ` Dmitry V. Levin
@ 2005-12-05 5:44 ` Andrey Rahmatullin
2005-12-05 19:08 ` Dmitry V. Levin
2005-12-05 9:19 ` [devel] q: textrel faq/wiki entry? (was: Q: linuxsampler) Michael Shigorin
2005-12-09 18:46 ` [devel] Q: linuxsampler Mikhail Yakshin
2 siblings, 1 reply; 9+ messages in thread
From: Andrey Rahmatullin @ 2005-12-05 5:44 UTC (permalink / raw)
To: devel
[-- Attachment #1: Type: text/plain, Size: 402 bytes --]
On Mon, Dec 05, 2005 at 01:51:25AM +0300, Dmitry V. Levin wrote:
> relocations. Для этого достаточно из каждого объектного файла,
> образующего liblinuxsampler.so.0, собрать ELF shared object
Это как?
--
WBR, wRAR (ALT Linux Team)
Powered by the ALT Linux fortune(8):
Хотя в 2.6-mm его [aic7xxx] всё-таки стали чинить, в результате, как
обычно, сначала сломали ;)
-- vsu in hardware@
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 9+ messages in thread
* [devel] q: textrel faq/wiki entry? (was: Q: linuxsampler)
2005-12-04 22:51 ` Dmitry V. Levin
2005-12-05 5:44 ` Andrey Rahmatullin
@ 2005-12-05 9:19 ` Michael Shigorin
2005-12-05 19:03 ` [devel] q: textrel faq/wiki entry? Dmitry V. Levin
2005-12-05 21:09 ` [devel] q: textrel faq/wiki entry? (was: Q: linuxsampler) Vitaly Lipatov
2005-12-09 18:46 ` [devel] Q: linuxsampler Mikhail Yakshin
2 siblings, 2 replies; 9+ messages in thread
From: Michael Shigorin @ 2005-12-05 9:19 UTC (permalink / raw)
To: ALT Devel discussion list
[-- Attachment #1: Type: text/plain, Size: 577 bytes --]
On Mon, Dec 05, 2005 at 01:51:25AM +0300, Dmitry V. Levin wrote:
> Подобная история приключилась когда-то с libalsa, патч до сих
> пор в пакете называется alsa-lib-0.9.8-alt-fpic.patch, стоит на
> него один раз взглянуть, чтобы понять, насколько нетиповыми
> бывают грабли.
Кстати, на днях заглыдывал в faq по поводу TEXTREL.
Там ничего нет, пришлось лезть в архивы.
Что именно стоит занести туда или на wiki, помимо вот ссылки
на патч (кстати, опять спасибо)?
--
---- WBR, Michael Shigorin <mike@altlinux.ru>
------ Linux.Kiev http://www.linux.kiev.ua/
[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [devel] q: textrel faq/wiki entry?
2005-12-05 9:19 ` [devel] q: textrel faq/wiki entry? (was: Q: linuxsampler) Michael Shigorin
@ 2005-12-05 19:03 ` Dmitry V. Levin
2005-12-05 21:09 ` [devel] q: textrel faq/wiki entry? (was: Q: linuxsampler) Vitaly Lipatov
1 sibling, 0 replies; 9+ messages in thread
From: Dmitry V. Levin @ 2005-12-05 19:03 UTC (permalink / raw)
To: ALT Devel discussion list
[-- Attachment #1: Type: text/plain, Size: 618 bytes --]
On Mon, Dec 05, 2005 at 11:19:32AM +0200, Michael Shigorin wrote:
> On Mon, Dec 05, 2005 at 01:51:25AM +0300, Dmitry V. Levin wrote:
> > Подобная история приключилась когда-то с libalsa, патч до сих
> > пор в пакете называется alsa-lib-0.9.8-alt-fpic.patch, стоит на
> > него один раз взглянуть, чтобы понять, насколько нетиповыми
> > бывают грабли.
>
> Кстати, на днях заглыдывал в faq по поводу TEXTREL.
> Там ничего нет, пришлось лезть в архивы.
>
> Что именно стоит занести туда или на wiki, помимо вот ссылки
> на патч?
Ценные мысли и простые рецепты. Тот патч скорее исключение.
--
ldv
[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [devel] Q: linuxsampler
2005-12-05 5:44 ` Andrey Rahmatullin
@ 2005-12-05 19:08 ` Dmitry V. Levin
0 siblings, 0 replies; 9+ messages in thread
From: Dmitry V. Levin @ 2005-12-05 19:08 UTC (permalink / raw)
To: ALT Devel discussion list
[-- Attachment #1: Type: text/plain, Size: 358 bytes --]
On Mon, Dec 05, 2005 at 10:44:52AM +0500, Andrey Rahmatullin wrote:
> On Mon, Dec 05, 2005 at 01:51:25AM +0300, Dmitry V. Levin wrote:
> > relocations. Для этого достаточно из каждого объектного файла,
> > образующего liblinuxsampler.so.0, собрать ELF shared object
> Это как?
Примерно тем же способом, как собирается сама библиотека.
--
ldv
[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [devel] q: textrel faq/wiki entry? (was: Q: linuxsampler)
2005-12-05 9:19 ` [devel] q: textrel faq/wiki entry? (was: Q: linuxsampler) Michael Shigorin
2005-12-05 19:03 ` [devel] q: textrel faq/wiki entry? Dmitry V. Levin
@ 2005-12-05 21:09 ` Vitaly Lipatov
2005-12-06 9:58 ` [devel] " Michael Shigorin
1 sibling, 1 reply; 9+ messages in thread
From: Vitaly Lipatov @ 2005-12-05 21:09 UTC (permalink / raw)
To: ALT Devel discussion list
On Monday 05 December 2005 12:19, Michael Shigorin wrote:
> Кстати, на днях заглыдывал в faq по поводу TEXTREL.
> Там ничего нет, пришлось лезть в архивы.
>
> Что именно стоит занести туда или на wiki, помимо вот ссылки
> на патч (кстати, опять спасибо)?
А не уже?
http://wiki.sisyphus.ru/devel/ProblemWithVerifyELFAndRPATH
http://wiki.sisyphus.ru/devel/TextRel
--
Lav
Виталий Липатов
Санкт-Петербург
GNU! ALT Linux Team! WINE! LaTeX! LyX! http://freesource.info
^ permalink raw reply [flat|nested] 9+ messages in thread
* [devel] Re: q: textrel faq/wiki entry? (was: Q: linuxsampler)
2005-12-05 21:09 ` [devel] q: textrel faq/wiki entry? (was: Q: linuxsampler) Vitaly Lipatov
@ 2005-12-06 9:58 ` Michael Shigorin
0 siblings, 0 replies; 9+ messages in thread
From: Michael Shigorin @ 2005-12-06 9:58 UTC (permalink / raw)
To: ALT Devel discussion list
On Tue, Dec 06, 2005 at 12:09:20AM +0300, Vitaly Lipatov wrote:
> А не уже?
> http://wiki.sisyphus.ru/devel/TextRel
Точно; добавил в SpecTips ссылку. (tnx 2 wrar)
--
---- WBR, Michael Shigorin <mike@altlinux.ru>
------ Linux.Kiev http://www.linux.kiev.ua/
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [devel] Q: linuxsampler
2005-12-04 22:51 ` Dmitry V. Levin
2005-12-05 5:44 ` Andrey Rahmatullin
2005-12-05 9:19 ` [devel] q: textrel faq/wiki entry? (was: Q: linuxsampler) Michael Shigorin
@ 2005-12-09 18:46 ` Mikhail Yakshin
2 siblings, 0 replies; 9+ messages in thread
From: Mikhail Yakshin @ 2005-12-09 18:46 UTC (permalink / raw)
To: ALT Devel discussion list
Dmitry V. Levin wrote:
>>Что характерно, сам продукт написан достаточно грамотно и сам
>>обрабатывает ситуацию с -fPIC, что видно по логам:
>
> Подобная история приключилась когда-то с libalsa, патч до сих пор в
> пакете называется alsa-lib-0.9.8-alt-fpic.patch, стоит на него один раз
> взглянуть, чтобы понять, насколько нетиповыми бывают грабли.
Посмотрел, понял, что все ужасно %)
>>Пробовал добавлять в %configure --disable-static - не помогает. Есть
>>подозрение на то, что такой эффект дают "assembly optimizations",
>>которые включены и выключать их не очень хочется...
>
> Для начала надо локализовать тот объектный файл, который содержит text
> relocations. Для этого достаточно из каждого объектного файла,
> образующего liblinuxsampler.so.0, собрать ELF shared object и проверить
> его на наличие text relocations.
Потратил кучу времени, пытаясь это сделать, но достаточно безуспешно -
даже собрать отдельно каждый .o довольно проблематично, а сделав это -
нет никакой гарантии, что то, что получается - это то, что нужно. Пока
решил, что дальше тратить время бессмысленно, хотя бы потому, что
liblinuxsampler.so собственно как таковой никому не нужен - пока даже в
дикой природе нет ни одного проекта, кроме самого linuxsampler, который
бы ее с ней линковался.
Сдался и собрал с --disable-shared. В итоге пакет занимает вместо 900
килобайт всего 600 и должен наконец-то пройти в Сизиф.
--
WBR, Mikhail Yakshin AKA GreyCat
ALT Linux [http://www.altlinux.ru] [xmpp:greycat@altlinux.org]
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2005-12-09 18:46 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-12-04 22:40 [devel] Q: linuxsampler Mikhail Yakshin
2005-12-04 22:51 ` Dmitry V. Levin
2005-12-05 5:44 ` Andrey Rahmatullin
2005-12-05 19:08 ` Dmitry V. Levin
2005-12-05 9:19 ` [devel] q: textrel faq/wiki entry? (was: Q: linuxsampler) Michael Shigorin
2005-12-05 19:03 ` [devel] q: textrel faq/wiki entry? Dmitry V. Levin
2005-12-05 21:09 ` [devel] q: textrel faq/wiki entry? (was: Q: linuxsampler) Vitaly Lipatov
2005-12-06 9:58 ` [devel] " Michael Shigorin
2005-12-09 18:46 ` [devel] Q: linuxsampler Mikhail Yakshin
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