[devel] Новый binutils и bug #9247

Alex Yustasov =?iso-8859-1?q?yust_=CE=C1_altlinux=2Eru?=
Вс Апр 2 01:59:03 MSD 2006


Здравствуйте.
Есть xen, который перестал собираться, и bug #9247 с похожими 
комментариями, который RESOLVED FIXED.

В make несобирающийся участок выглядит так
$(PROGRAMS): %: %.o 
        $(LINK.o) $^ $(LDLIBS) -o $@ 

Реально
gcc  -Wdeclaration-after-statement  -m64 -Wall -Werror -O3 -fno-strict-aliasing \
    -I ../../tools/libxc -Wp,-MD,.xc_restore.o.d -c -o xc_restore.o xc_restore.c
gcc   -m64  xc_restore.o -L../../tools/libxc -lxenguest -lxenctrl -o xc_restore

Вторую библиотеку не находит.
/usr/bin/ld1: warning: libxenctrl.so.3.0, needed by ../../tools/libxc/libxenguest.so, not found (try using -rpath or -rpath-link)
../../tools/libxc/libxenguest.so: undefined reference to `xc_domain_unpause'
../../tools/libxc/libxenguest.so: undefined reference to `xc_get_pfn_list'

ld вызывается так
ld --as-needed --eh-frame-hdr -m elf_x86_64 -dynamic-linker /lib64/ld-linux-x86-64.so.2 \
    -o xc_restore /usr/lib64/gcc/x86_64-alt-linux/3.4.5/../../../../lib64/crt1.o \
    /usr/lib64/gcc/x86_64-alt-linux/3.4.5/../../../../lib64/crti.o \
    /usr/lib64/gcc/x86_64-alt-linux/3.4.5/crtbegin.o -L../../tools/libxc \
    -L/usr/lib64/gcc/x86_64-alt-linux/3.4.5 \
    -L/usr/lib64/gcc/x86_64-alt-linux/3.4.5/../../../../lib64 \
    -L/usr/lib64/gcc/x86_64-alt-linux/3.4.5/../../.. \
    -L/lib/../lib64 -L/usr/lib/../lib64 xc_restore.o -lxenguest \
    -lxenctrl -lgcc --as-needed -lgcc_s -lc -lgcc --as-needed \
    -lgcc_s /usr/lib64/gcc/x86_64-alt-linux/3.4.5/crtend.o \
    /usr/lib64/gcc/x86_64-alt-linux/3.4.5/../../../../lib64/crtn.o

Если подставить в вызов ld -rpath ../../tools/libxc то собирается.
Как это работало раньше? ld не обрабатывает -L или что?

-- 
    Alex Yustasov

ALT Linux fortune:
Поменяйте в настройках язык на английский, выйдите, запустите снова,
поменяйте на русский и снова перезагрузите mozilla.
		-- aen in community@



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