ALT Linux Team development discussions
 help / color / mirror / Atom feed
From: "Ivan A. Melnikov" <iv@altlinux.org>
To: ALT Linux Team development discussions <devel@lists.altlinux.org>
Cc: shaba@altlinux.ru
Subject: [devel] --as-needed и --gc-section was: Re: [sisyphus] systemd
Date: Sat, 29 Jan 2011 00:58:24 +0300
Message-ID: <20110129005824.0056d863@deimos.localdomain> (raw)
In-Reply-To: <AANLkTi=4AiSan5S_2r27eCEpJrxdBr=5d96+pvLr5_oW@mail.gmail.com>

On Thu, 27 Jan 2011 15:21:43 +0300
Alexey Shabalin <a.shabalin@gmail.com> wrote:

> 2011/1/26 Alexey Shabalin <a.shabalin@gmail.com>:
[...]
> 
> Что-то я не пойму, как бороться с этим(в Makefile ничего криминального
> не обнаружил):
> 
> lib.req: WARNING: /home/alex/tmp/systemd-buildroot/bin/systemd:
> overlinked libraries: /lib64/ld-linux-x86-64.so.2
> lib.req: WARNING:
> /home/alex/tmp/systemd-buildroot/bin/systemd-ask-password: overlinked
> libraries: /lib64/ld-linux-x86-64.so.2
> lib.req: WARNING: /home/alex/tmp/systemd-buildroot/bin/systemd-notify:
> overlinked libraries: /lib64/ld-linux-x86-64.so.2
> /lib64/libselinux.so.1
> lib.req: WARNING:
> /home/alex/tmp/systemd-buildroot/bin/systemd-tty-ask-password-agent:
> overlinked libraries: /lib64/ld-linux-x86-64.so.2
> lib.req: WARNING:
> /home/alex/tmp/systemd-buildroot/lib/systemd/systemd-ac-power:
> overlinked libraries: /lib64/ld-linux-x86-64.so.2
> /lib64/libselinux.so.1
> lib.req: WARNING:
> /home/alex/tmp/systemd-buildroot/lib/systemd/systemd-cgroups-agent:
> overlinked libraries: /lib64/ld-linux-x86-64.so.2
> /lib64/libselinux.so.1
> lib.req: WARNING:
> /home/alex/tmp/systemd-buildroot/lib/systemd/systemd-fsck: overlinked
> libraries: /lib64/ld-linux-x86-64.so.2 /lib64/libselinux.so.1
> lib.req: WARNING:
> /home/alex/tmp/systemd-buildroot/lib/systemd/systemd-initctl:
> overlinked libraries: /lib64/ld-linux-x86-64.so.2
> /lib64/libselinux.so.1
> lib.req: WARNING:
> /home/alex/tmp/systemd-buildroot/lib/systemd/systemd-kmsg-syslogd:
> overlinked libraries: /lib64/ld-linux-x86-64.so.2
> /lib64/libselinux.so.1
> lib.req: WARNING:
> /home/alex/tmp/systemd-buildroot/lib/systemd/systemd-logger:
> overlinked libraries: /lib64/ld-linux-x86-64.so.2
> /lib64/libselinux.so.1
> lib.req: WARNING:
> /home/alex/tmp/systemd-buildroot/lib/systemd/systemd-modules-load:
> overlinked libraries: /lib64/ld-linux-x86-64.so.2
> /lib64/libselinux.so.1
> lib.req: WARNING:
> /home/alex/tmp/systemd-buildroot/lib/systemd/systemd-quotacheck:
> overlinked libraries: /lib64/ld-linux-x86-64.so.2
> /lib64/libselinux.so.1
> lib.req: WARNING:
> /home/alex/tmp/systemd-buildroot/lib/systemd/systemd-random-seed:
> overlinked libraries: /lib64/ld-linux-x86-64.so.2
> lib.req: WARNING:
> /home/alex/tmp/systemd-buildroot/lib/systemd/systemd-readahead-collect:
> overlinked libraries: /lib64/ld-linux-x86-64.so.2
> /lib64/libselinux.so.1
> lib.req: WARNING:
> /home/alex/tmp/systemd-buildroot/lib/systemd/systemd-readahead-replay:
> overlinked libraries: /lib64/ld-linux-x86-64.so.2
> /lib64/libselinux.so.1
> lib.req: WARNING:
> /home/alex/tmp/systemd-buildroot/lib/systemd/systemd-remount-api-vfs:
> overlinked libraries: /lib64/ld-linux-x86-64.so.2
> /lib64/libselinux.so.1
> lib.req: WARNING:
> /home/alex/tmp/systemd-buildroot/lib/systemd/systemd-reply-password:
> overlinked libraries: /lib64/ld-linux-x86-64.so.2
> /lib64/libselinux.so.1
> lib.req: WARNING:
> /home/alex/tmp/systemd-buildroot/lib/systemd/systemd-shutdown:
> overlinked libraries: /lib64/ld-linux-x86-64.so.2
> /lib64/libselinux.so.1
> lib.req: WARNING:
> /home/alex/tmp/systemd-buildroot/lib/systemd/systemd-shutdownd:
> overlinked libraries: /lib64/ld-linux-x86-64.so.2
> /lib64/libselinux.so.1
> lib.req: WARNING:
> /home/alex/tmp/systemd-buildroot/lib/systemd/systemd-sysctl:
> overlinked libraries: /lib64/ld-linux-x86-64.so.2
> /lib64/libselinux.so.1
> lib.req: WARNING:
> /home/alex/tmp/systemd-buildroot/lib/systemd/systemd-timestamp:
> overlinked libraries: /lib64/ld-linux-x86-64.so.2
> /lib64/libselinux.so.1
> lib.req: WARNING:
> /home/alex/tmp/systemd-buildroot/lib/systemd/systemd-tmpfiles:
> overlinked libraries: /lib64/ld-linux-x86-64.so.2
> lib.req: WARNING:
> /home/alex/tmp/systemd-buildroot/lib/systemd/systemd-update-utmp:
> overlinked libraries: /lib64/ld-linux-x86-64.so.2
> /lib64/libselinux.so.1
> lib.req: WARNING:
> /home/alex/tmp/systemd-buildroot/lib/systemd/systemd-user-sessions:
> overlinked libraries: /lib64/ld-linux-x86-64.so.2
> /lib64/libselinux.so.1
> lib.req: WARNING:
> /home/alex/tmp/systemd-buildroot/lib/systemd/systemd-vconsole-setup:
> overlinked libraries: /lib64/ld-linux-x86-64.so.2
> /lib64/libselinux.so.1
> lib.req: WARNING:
> /home/alex/tmp/systemd-buildroot/lib64/security/pam_systemd.so:
> overlinked libraries: /lib64/ld-linux-x86-64.so.2
> lib.req: WARNING:
> /home/alex/tmp/systemd-buildroot/usr/bin/systemd-cgls: overlinked
> libraries: /lib64/libselinux.so.1
> 

Похоже на то, что -Wl,--as-needed и -Wl,--gc-sections довольно
интересно взаимодействуют. Сначала отрабатывает --as-needed, видит что
символы из библиотеки нужны, оставляет её; затем --gc-sections удаляет
все секции, которые порождали зависимость. Получаем перелинкованную
прогамму.

Завтра (теперь уже сегодня) попробую воспроизвести на более простом
примере.

P.S. Поскольку это теперь больше вопрос по тулчейну, перевожу в devel@.

-- 
WBR,
Ivan A. Melnikov


       reply	other threads:[~2011-01-28 21:58 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-01-28 21:58   ` Ivan A. Melnikov [this message]
2011-01-29 11:29     ` REAL
2011-01-31 18:39       ` Alexey Shabalin
2011-01-31 20:05         ` Ivan A. Melnikov
2011-01-31 20:42           ` Kirill A. Shutemov
2011-01-31 20:50             ` Ivan A. Melnikov
2011-01-31 21:26               ` Kirill A. Shutemov
2011-04-06 10:21             ` [devel] " Dmitry V. Levin

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=20110129005824.0056d863@deimos.localdomain \
    --to=iv@altlinux.org \
    --cc=devel@lists.altlinux.org \
    --cc=shaba@altlinux.ru \
    /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