[devel] Q: gcc/ld madness

Konstantin A. Lepikhov =?iso-8859-1?q?lakostis_=CE=C1_altlinux=2Eorg?=
Сб Сен 22 15:21:56 MSD 2007


Hi Alexey!

Saturday 22, at 02:29:48 PM you wrote:

> * Konstantin A. Lepikhov <lakostis@> [070922 14:13]:
> > echo 'int main(int argc, char **argv) { gzdopen(0, "rb"); return 0; }' | \
> > gcc -Wall -include zlib.h -x c -o a.out -lz -
> gcc -Wall -include zlib.h -x c -o a.out - -lz
> 
> > PS Если уши растут из as-needed, просьба дать детальное и
> > документированное объяснение почему эта ass ломает такие простые примеры.
> 
> info ld:
> 
> `--as-needed'
> `--no-as-needed'
>      This option affects ELF DT_NEEDED tags for dynamic libraries
>      mentioned on the command line after the `--as-needed' option.
>      Normally, the linker will add a DT_NEEDED tag for each dynamic
>      library mentioned on the command line, regardless of whether the
>      library is actually needed.  `--as-needed' causes DT_NEEDED tags
>      to only be emitted for libraries that satisfy some symbol
>      reference from regular objects which is undefined at the point
>      that the library was linked.  `--no-as-needed' restores the
>      default behaviour.
> 
> Собсно, в первом случае в момент линковки libz нет ссылок на
> символы оттуда, во втором они появляются.  Это уже неоднократно
> здесь обсуждалось.
придется вешать багу на сборочные скрипты из openwrt :(

-- 
WBR et al.
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя     : =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Тип     : application/pgp-signature
Размер  : 189 байтов
Описание: Digital signature
Url     : <http://lists.altlinux.org/pipermail/devel/attachments/20070922/954fe86b/attachment-0002.bin>


Подробная информация о списке рассылки Devel